من یه procedure تو sql نوشتم و تو sql درست جواب داد. (با توجه به اینکه ورودی های من کاراکتر فارسی بود.)
حالا تو C# وقتی یه table adapter از procedure ساختم و همون جا priview data زدم که چک کنم درست جواب میده یا نه ، جواب نداد!!!
چرا؟
من یه procedure تو sql نوشتم و تو sql درست جواب داد. (با توجه به اینکه ورودی های من کاراکتر فارسی بود.)
حالا تو C# وقتی یه table adapter از procedure ساختم و همون جا priview data زدم که چک کنم درست جواب میده یا نه ، جواب نداد!!!
چرا؟
منظورتون چي جواب نداد؟!
خطا داد يا كلا هيچي نيورد يا چيزي كه آورد توقع نداشتيد؟يه مقدار واضحتر سوالتونو مطرح كنيد
تو دیتا گریدویو هیچی نمایش نداد.
در priview data هم این رو آورد!
Capture.JPG
کسی نمیدونه مشکل کجاست؟
اگه تو priview data این جدول نمایش داده بشه یعنی چی؟ خطا چیه؟
Capture.JPG
من اینجا چه طوری میتونم از اینکه ورودی هام به صورت nvarchar میرن مطمئن بشم؟ یا جای دیگه ای باید برم؟
Capture.JPG
برید داخل Dataset| قسمت property های TableAdapter مورد نظرتون
قسمت select command را باز کنید، خاصیتی به اسم Parameters داره که لیست تمام پارامترهایی هست که دارید برای دستور select استفاده می کنید (برای شما Name و family)
نگاه کنید نوعشون از نوع Nvarchar باشه
موفق باشید
چک کردم nvarchar بود!
من الان امتحان کردم دیدم که اگر من خودم نام و فامیلی رو تایپ کنم جواب نمیده و هیچ خروجی نداره ولی اگر همون نام و فامیلی رو از تو جدولم کپی و پیست کنم جواب میده!!!
چی کار باید بکنم؟
شاید مشکلت توی حرف ها باشه. "ی" فارسی و "ي" عربی مثل "علی" و "علي"
یا حرف "ک" فارسی " ك" عربی
این ها رو چک کن!
دوست عزیز اگه توی تالار جستجو کنی مواردی مثل شما هست.
شما یا باید موقع ورود اطلاعاتتون مثلا حرف "ی" رو به صورت "ي" وارد کنید (کیبورد حالت فارسی shift + x)
یا اینکه فایل dll مربوط به کیبورد عربی رو روی سیستم خودتون نصب کنید (جای حرف "ی" میشه "ي" و دیگر کاراکترها)
یا توی برنامه زمانی که داری اطلاعات رو سمت db می فرستی حروف رو جایگزین کنی (replace)
یا از اسکریپت تبدیل حروف استفاده کن. مثل این که دوستان زحمتش رو کشیدند. تمام حروف مربوطه عربی را با معادل فارسی جایگزین می کند: لینک
جستجو کنید! این از اون دست مشکلاتی هست که تقریبا همه یکبار تجربه کرده اند
موفق باشید.