نقل قول نوشته شده توسط samiasoft مشاهده تاپیک
سلام نمیدانم آیا در این باره در انجمن تابحال بحث شده یا خیر ...چون با جستجو موردی پیدانکردم

یکی از ستون های جدول دیتابیسم بصورت nvarchar(5) هستش و همیشه مقدار عددی میگیره.

میخواستم هنگام لود کردن در دیتاگرید شرطی بزارم که برای مثال رکورد هایی که این ستونش حداکثر مقدارش 100 باشه رو پیداکنه ...اومدم اینطور نوشتم :

int zirbana=100;



var search = (from rows in database.Tbl_Apartments

where Convert.ToInt32(rows.zirBana.ToString()) <= zirbana


select new
{
rows.id_Apartment,
rows.sellerName,
rows.foroshi,
rows.zirBana,

}).ToList();


در این حالت با خطای زیر مواجه میشوم :
LINQ to Entities does not recognize the method 'Int32 ToInt32(System.String)' method, and this method cannot be translated into a store expression


ممنون میشوم راهنمایی کنید.
ناگفته نماند برای ارتباط با دیتابیسی از انتیتی فریمورک استفاده کردم.

این صفحه رو مطالعه کردم اما متوجه نشدم !
https://stackoverflow.com/questions/...-int-in-ef-4-0


جز اینکه بیام اون ستون را از نوع int درنظر بگیریم آیا راهی نداره؟
با سلام
این راه را هم امتحان کنید...

int zirbana=100;


var search = (from rows in database.Tbl_Apartments

where cast(rows.zirBana as Edm.Int32) <= zirbana
select new
{
rows.id_Apartment,
rows.sellerName,
rows.foroshi,
rows.zirBana,

}).ToList();

البته من با نوع nvarchar تست نکردم چون که cast با primitive types کار میکنه!