ورود

View Full Version : سوال: تعیین کمترین مقدار برای کلید جدول در EF



saviorperi
پنج شنبه 10 مهر 1393, 18:43 عصر
سلام دوستان
فرض کنید در EF کلاسی همانند کلاس زیر تعریف کردیم؛ چطور میتونیم تعیین کنیم که کمترین مقدار ID چند باشه ؟ مثلا مقدار ID از 100 به بالا باشه ؟
در ضمن از MVC5 و VS2013.3 استفاده می‌کنم.

public class VideoReference
{
[Key]
public int ID { get; set; }

[Required]
[DisplayName("آدرس")]
public string Address { get; set; }
}

Rejnev
پنج شنبه 10 مهر 1393, 19:12 عصر
فکر میکنم بتونی کنترل setter رو خودت به دست بگیری:


[Key]
public int ID
{
get{return _id;}
set
{
if (value>100)
{
_id=value;
}
else _id=100;
}
}
private int _id;

aghayex
پنج شنبه 10 مهر 1393, 22:08 عصر
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity , 100, 1)]
public int ID { get; set; }

saviorperi
پنج شنبه 10 مهر 1393, 23:08 عصر
فکر میکنم بتونی کنترل setter رو خودت به دست بگیری:


[Key]
public int ID
{
get{return _id;}
set
{
if (value>100)
{
_id=value;
}
else _id=100;
}
}
private int _id;


دوست عزیز متاسفانه بنده متوحه نشدم شما چیکار کردید و نقش _id اینجا چیه. میدونیم که مقدار کلیدهایی که به صورت Identity هستن رو خود SQL تولید می‌کنه و از طرف دیگه میدونیم که در تنظیمات خود جداول SQL میتونیم مقدار آغازین فیلدهای Identity رو تعیین کنیم. حالا میخواستم بدونم روشی هست که همین کار رو با EF انجام داد ؟

saviorperi
پنج شنبه 10 مهر 1393, 23:11 عصر
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity , 100, 1)]
public int ID { get; set; }


ممنون دوست عزیز، ولی DatabaseGenerated فقط یک آرگومنت قابل تنظیم داره که اون هم از نوع DatabaseGeneratedOption هستش؛ جهت اطمینان تست هم کردم ولی خطا داد.