PDA

View Full Version : خاصیت intelligence من تو web.config از کار افتاده



hamed_bostan
چهارشنبه 23 اسفند 1385, 20:15 عصر
با سلام . web.config من توی vs.net 2005 چند وقتی هست دیگه intellisense نیست . کسی تا حالا با این مشکل برخورد کرده ؟ بابت intelligence تو سایت search کردم چیزی ندیدم .
ممنون

rtech
چهارشنبه 23 اسفند 1385, 20:47 عصر
من که تا حالا ندیدم web.config م intelligence باشه !! ورژنی که استفاده میکنید چیه ؟ من از team suite استفاده میکنم و هیچ وقت web.config من intelligence نبوده

hamed_bostan
چهارشنبه 23 اسفند 1385, 20:54 عصر
خسته نباشییییییییییییییییییییی د. بابا web.config توی intellisense vs.net 2005 هست . حداقل توی web developer express که هست

hamed_bostan
چهارشنبه 23 اسفند 1385, 21:06 عصر
این لینک رو ببین:

http://weblogs.asp.net/scottgu/archive/2005/12/02/432077.aspx

ضمنا من نمی دونم چرا خارج از تگ <configuration> ای« خاصیت وجود داره اما داخلش نه . تازه وقتی <system.web> رو خارح از <Configuration> ایجاد می کنم error میده که نمیشه دو تا root با هم وجود داشته باشه

مشکل حل شد . اگر داخل wb.config در قسمت <configuration> این رو حذف کنیم :



xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0"


درست میشه .

خوب حالا این مشکل حل شد و برنامه هم درست کار می کنه اما کسی میدونه بود و نبود این په فرقی می کنه؟؟؟

Alireza_Salehi
چهارشنبه 23 اسفند 1385, 21:42 عصر
خوب این که مشخصه در یک سند XML نمیشه دو تا تگ ریشه داشت!


و این که به چه دردی می خوره:

configuration Element (General Settings Schema) (http://msdn2.microsoft.com/en-us/library/ms228147.aspx)

Specifies the URL to the XML schema that is used to validate the configuration file. If this attribute is not set, you cannot use F1 Help in Microsoft Visual Studio to open topics for the configuration elements.

میتونی پاکش کنی ولی اگر از این به بعد مکان نما رو روی نام یک خاصیت قرار بدی و F1 بزنی دیگه Help نمی تونه چیزی پیدا کنه!

hamed_bostan
چهارشنبه 23 اسفند 1385, 21:59 عصر
خوب این چه ربطی به Intellisense بودن داره که بودنش باعث از کار افتادن این میشه . میدونید چرا؟

Alireza_Salehi
پنج شنبه 24 اسفند 1385, 08:51 صبح
همون طور که می دونید دات نت در بسیاری از موارد (تنظیمات و ....) از XML استفاده میکنه ، حالا هر جایی که از XML استفاده شده برای نگهداری عملکرد یا بهتر بگم ساختار اطلاعاتی اون یک فایل Schema از نوع XML وجود داره !
در واقع برای این که Intellisense یا هر عملکرد دیگه ای بفهمه که باید چی کار کنه و همچنین صحت ساختار XML مورد نظر رو تایید کنه (مثلا تو Web.Config تگ اضافی و تعریف نشده اگر به کار رفت خطا بده) باید فایل Schema مربوط به اون کار بهش معرفی بشه.
از اون لینک پایین:

The schema cache is global to all users on your computer and includes standard XML Schemas that are used for IntelliSense and XML document validation.



اون NameSpace که در Attribute به نام XMLNS در تگ Configuration قرار میدیم در واقع ساختار سلسله مراتبی فایل Web.Config رو با تمام عناصرش معرفی میکنه.

یک مثال دیگش همین نحوه نمایش Intellisense هست ، اون ToolTip که نشون میده از سه قسمت تشکیل شده و این که این سه قسمت چی هستند در یک فایل XML ذخیره شده!(vsIntellisense.xml)

فایل تنظیمات Intellisense در Web.Config هم DotNetConfig.xml هستش اگر خواستی داخلش رو ببین چیزای جالبی خواهی دید!

این فایل های تنظیمات رو در پوشه نصب ویژوال استودیو می تونی پیدا کنی:

\...\Microsoft Visual Studio 8\Xml\Schemas


Schema Cache (http://msdn2.microsoft.com/en-us/library/ms255821%28VS.80%29.aspx)


وقتی این xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0" مقدار نباشه خودش به طور پیشفرض از DotNetConfig.xml استفاده میکنه که در این فایل هم نحوه برخورد با Intellisense و هم نحوه برخورد با Help تعریف شده ، وقتی شما مستقیما این مقدار رو که نشان دهنده فضا نام Help هست رو میدی دیگه مشخصات اصلی و Intellisense رو گم میکنه !


فقط نکته عجیب اینجاست که چه خود VS فایل Web.Config رو اضافه کنه چه خودمون ، این Attribute وجود نداره ،حالا یه دفعه بعد از یه مدت کار کردن با پروژه از کجا میاد نمیدونم!

hamed_bostan
پنج شنبه 24 اسفند 1385, 10:07 صبح
واقعا از توضیح کاملت ممنونم دوست عزیز . حداقل من که خیلی چیزها یاد گرفتم .




فقط نکته عجیب اینجاست که چه خود VS فایل Web.Config رو اضافه کنه چه خودمون ، این Attribute وجود نداره ،حالا یه دفعه بعد از یه مدت کار کردن با پروژه از کجا میاد نمیدونم!



منم واسه ام خیلی عجییه . می چرخم ببینم می فهمم یا نه .دوستان هم اگه نظری دارن خوشحال می شیم با تقسیمش کنن

یا حق

Alireza_Salehi
پنج شنبه 24 اسفند 1385, 11:12 صبح
راستی یادم رفت ، اگر اینطوری هم باشه درست میشه:


<configuration xmlns:xs="DotNetConfig.xsd" xmlns:vs="http://schemas.microsoft.com/.NetConfiguration/v2.0">
your configuration
</configuration>