saule
v1.8.0
Saule هي مكتبة JSON API (الإصدار 1.0) لـ ASP.Net Web API 2. قم بتثبيت Saule باستخدام NuGet:
Install-Package saule
لاستخدام Saule، يجب عليك تحديد الموارد التي تحتوي على معلومات حول المجال الخاص بك:
public class PersonResource : ApiResource{ public PersonResource() { Attribute("FirstName"); السمة("اسم العائلة"); السمة("العمر"); BelongsTo<CompanyResource>("Job"); HasMany<PersonResource>("الأصدقاء"); }}public class CompanyResource : ApiResource{ public CompanyResource() { Attribute("Name"); السمة("عدد الموظفين"); }}يمكنك بعد ذلك استخدام هذه العناصر لإجراء تسلسل لأي فئة في Json Api (طالما أن فصلك يحتوي على خصائص بنفس الأسماء الموجودة في النموذج الخاص بك):
public class PersonController : ApiController{ [HttpGet] [ReturnsResource(typeof(PersonResource))] [Route("people/{id}")] public JohnSmith GetPerson(string id) { return new JohnSmith(); }} احصل على http://example.com/people/123{ "data": { "type": "person"، "id": "123"، "attributes": { "first-name": "John"، " الاسم الأخير": "سميث"، "العمر": 34
}, "relationships": { "job": { "links": { "self": "http://example.com/people/123/relationships/job/"، "ذات صلة": "http://example" .com/people/123/job/"
}, "بيانات": { "النوع": "شركة"، "المعرف": "456"
}
}, "friends": { "links": { "self": "http://example.com/people/123/relationships/friends/"، "ذات صلة": "http://example.com/people/ 123/الأصدقاء/"
}، "بيانات": [
{ "النوع": "شخص"، "المعرف": "789"
}
]
}
}
}، "متضمنة": [
{ "النوع": "شركة"، "المعرف": "456"، "السمات": { "الاسم": "Awesome, Inc."، "عدد الموظفين": 24
}
},
{ "النوع": "شخص"، "المعرف": "789"، "السمات": { "الاسم الأول": "سارة"، "الاسم الأخير": "جونز"، "العمر": 38
}
}
]، "الروابط": { "الذات": "http://example.com/people/123"
}
}تعمل عملية إلغاء التسلسل تمامًا كما هو الحال في Web API العادي؛ لا تحتاج إلى القيام بأي شيء خاص لإنجاز هذا العمل.
اتبع الخطوات أدناه لإنشاء إصدار جديد:
قم بإنشاء فرع يسمى release-v<version> (على سبيل المثال، release-v1.5 )
قم بزيادة رقم الإصدار في appveyor.yml في master
ادفع كلا التغييرين وانتظر البناء
انسخ ملاحظات الإصدار في وصف الإصدار على Github
نشر الإصدار الجديد