PDA

View Full Version : رفع خطا



shahram176
یک شنبه 13 بهمن 1392, 09:11 صبح
سلام
مشکل کد چیه که خطا میده؟
116296

Aalibeigi
یک شنبه 13 بهمن 1392, 09:26 صبح
سلام
تو این لینک (http://forums.asp.net/t/1808030.aspx?How+to+fix+object+reference+not+set+t o+an+instance+of+an+object+)راه حل رفع این خطا رو نشون داده
البته انگلیسیه
اما تا اون جا که من دیدم خوب بود و جامع

shahram176
یک شنبه 13 بهمن 1392, 09:50 صبح
من چیزی از این راه حل نفهمیدم میشه لطف کنید یه توضیح در موردش بدید

Aalibeigi
یک شنبه 13 بهمن 1392, 10:28 صبح
سلام
تو لینک های تهش تو یکی از سایت ها این ها رو نوشته:
(آدرس سایت:http://support.microsoft.com/kb/810098)
من ترجمشون میکنم واست:
این یه جور باگ برنامه نویسیه و وقتی رخ میده که به اطلاعات از طریق ADO در صفحه asp دسترسی پیدا کنی
بخاطر این به وجود میاد که ado و ado mdکاملا رو فریم ورک دات نت تست نشدن.این موضوع ممکنه معضلات متناوبی رو ایجاد منه.
To resolve this problem, register the Adodb.dll file in the global assembly cache (GAC). On a computer where only the .NET Framework is installed, the file Gacutil.exe does not exist.. Either obtain the gacutil file by installing Microsoft .NET Framework SDK, or create a Visual Studio.NET setup project that uses the installer to install the correct components.

To register Adodb.dll in the GAC, follow these steps:

حالا همه این ها یعنی:
برای رفع این مشکل باید این کار ها رو انجام بدی
فایل Adodb.dll در (global assembly cache (GAC باید رجیستر کنی.
رو یه کامپیوتر که فقط فریم ورک دات نت نصب باشه، فایل Gacutil.exe وجود نداره..در هر دو صورت فایل gacutil رو با نصب کردن Microsoft .NET Framework SDK یا ساختن یک پروژه Visual Studio.NET setup که نصب کننده رو برای نصب اجزای درست بکار میبره، بدست بیار.
برای رجیستر Adodb.dll در GAC قدم های زیر رو انجام بده:
(بقیه اش دیگه معلومه:)


Click Start and then click Run.
In the Run dialog box, type the following command, and then click OK:
C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705\gacut il /i C:\Program Files\Microsoft.NET\Primary Interop Assemblies\adodb.dll

Aalibeigi
یک شنبه 13 بهمن 1392, 10:29 صبح
چون من با linq کار کردم از این مشکلا ندیدم تا حالا:لبخندساده:
اگه بد ترجمش کردم به بزرگی خودتون بببخشید:خجالت:

shahram176
یک شنبه 13 بهمن 1392, 10:42 صبح
منم با linq کارکردم پس چرا خطا میده؟

Aalibeigi
یک شنبه 13 بهمن 1392, 10:45 صبح
سلام دقیقا داشتی چیکار میکردی؟؟؟
این ایراد مال ado هستش

Aalibeigi
یک شنبه 13 بهمن 1392, 10:46 صبح
شاید موقع data set دادن اشتباهی ado رو دادی
من تو قیمت ساپورت خود ماکروسافت رفتم:متفکر:

shahram176
یک شنبه 13 بهمن 1392, 10:50 صبح
من یه جدول دارم که میخوام کلمات کلیدی را از داخلش select کنم و این کد را نوشتم
testDataContext bank = new testDataContext();
string key = "";
foreach (tAd item in bank.tAds )
{
key += item.Key + ",";
}

shahram176
یک شنبه 13 بهمن 1392, 11:14 صبح
مگه دستوری که نوشتم مشکل داره؟

Aalibeigi
یک شنبه 13 بهمن 1392, 11:36 صبح
والا تا اون جا که میدونم درسته
میگم تو سی شارپ و ای اس پی با سی شارپ تا اون جا که میدونم واسه اضافه کردن کارکتر به رشته این طور عمل نمیکنن ها!
مگه پی اچ پیه که بشه این کار رو کرد؟
من خیلی وقته کار نکردم اما تا اون جا که میدونم و به یاد دارم اینطوری نبودا!!!

shahram176
یک شنبه 13 بهمن 1392, 11:40 صبح
میشه یه کد برام بذارید من اسم جدولم tadsو فیلدی که میخوام select کنم key

Aalibeigi
چهارشنبه 14 اسفند 1392, 16:55 عصر
سلام
من رفتم کلی گشتم.
کارت رو درست انجام دادی. تو یه کتاب نمونه کد هات رو دیدم.
نتیجه گرفتم مشکل تو دیتا ست دادنته.
احتمالا تو مراحل به جای linq از ado استفاده کردی.
راستی دیتا بیست الان که دیدم فعال نیست تو عکس کنارش ضربدره.
یه ریفرشش کن ببین کارت درست میشه....
شرمنده انقدر دیر جواب دادم.:افسرده:

Aalibeigi
چهارشنبه 14 اسفند 1392, 16:57 عصر
من الان یه کتاب آموزش ای اس پی جدید خریدم چون من کلا سی شارپ نویس بودم، ای اس پی خیلی واسم ساده است
دارم میخونمش
به جایی که مشکل شما هست رسیدم دوباره میام.