HOSSEINONLINE7
چهارشنبه 29 مرداد 1393, 22:27 عصر
سلام سورس پروژه ی IRISCMS را مطالعه میکردم چند سوال برام پیش اومده که نتونستم متوجه بشم لطفا راهنماییم کنید :
1. وظیفه ی Service Layer چیه ؟
2. از اینترفیس ها برای الزامی کردن تعریف پروپرتی ها در کلاسها استفاده میشه . این چه مزیتی داره ؟ خوب اینترفیس هم نزاریم مشکلی نیست پروپرتی ها را تو اون کلاسها خودمون تعریف میکنیم .
3. بعضی اکشن ها در کنترلر با Virtual تعریف شده . بعضی پروپرتی ها در کلاسهای EFCode First که Navigation نیستن هم Virtual تعریف شدن .مگه فقط پروپرتی هایی که قرار بود ارتباط ها را برقرار کنن بخاطر لیزی لودینگ Virtual نمیشدن ؟ دلیلش چیه ؟
مثال :
public virtual ActionResult BooksList(int labelId, int page = 0, int count = 8)
{
IOrderedEnumerable<BooksListModel> labelsList =
_postService.GetBooksList(labelId, page, count).OrderByDescending(post => post.CreatedDate);
if (!labelsList.Any())
return Content("no-more");
return PartialView(MVC.Label.Views._BooksList, labelsList);
}
public class Book
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
[AllowHtml]
public virtual string Description { get; set; }
public virtual string Author { get; set; }
public virtual string ISBN { get; set; }
public virtual string Year { get; set; }
public virtual string Page { get; set; }
public virtual string Language { get; set; }
public virtual string Publisher { get; set; }
public virtual Post Post { get; set; }
public virtual BookImage Image { get; set; }
public virtual byte[] RowVersion { get; set; }
}
4. الگوی Unit Of Work اینه که از دستوراتی برای دریافت اطلاعات در بانک اطلاعاتی استفاده کنیم که تراکنش های زیادی به بانک اطلاعاتی نفرسته ؟ یعنی از لیزی لودینگ استفاده کنیم تا تراکنش ها یکجا ارسال بشه ؟
تشکر
1. وظیفه ی Service Layer چیه ؟
2. از اینترفیس ها برای الزامی کردن تعریف پروپرتی ها در کلاسها استفاده میشه . این چه مزیتی داره ؟ خوب اینترفیس هم نزاریم مشکلی نیست پروپرتی ها را تو اون کلاسها خودمون تعریف میکنیم .
3. بعضی اکشن ها در کنترلر با Virtual تعریف شده . بعضی پروپرتی ها در کلاسهای EFCode First که Navigation نیستن هم Virtual تعریف شدن .مگه فقط پروپرتی هایی که قرار بود ارتباط ها را برقرار کنن بخاطر لیزی لودینگ Virtual نمیشدن ؟ دلیلش چیه ؟
مثال :
public virtual ActionResult BooksList(int labelId, int page = 0, int count = 8)
{
IOrderedEnumerable<BooksListModel> labelsList =
_postService.GetBooksList(labelId, page, count).OrderByDescending(post => post.CreatedDate);
if (!labelsList.Any())
return Content("no-more");
return PartialView(MVC.Label.Views._BooksList, labelsList);
}
public class Book
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
[AllowHtml]
public virtual string Description { get; set; }
public virtual string Author { get; set; }
public virtual string ISBN { get; set; }
public virtual string Year { get; set; }
public virtual string Page { get; set; }
public virtual string Language { get; set; }
public virtual string Publisher { get; set; }
public virtual Post Post { get; set; }
public virtual BookImage Image { get; set; }
public virtual byte[] RowVersion { get; set; }
}
4. الگوی Unit Of Work اینه که از دستوراتی برای دریافت اطلاعات در بانک اطلاعاتی استفاده کنیم که تراکنش های زیادی به بانک اطلاعاتی نفرسته ؟ یعنی از لیزی لودینگ استفاده کنیم تا تراکنش ها یکجا ارسال بشه ؟
تشکر