مهدی ولی خانی (ولیخانی) هستم .متولد دوم خرداد سال 63 . فارغ التحصیل رشته نرم افزار کامپیوتر ، مقطع کاردانی ، دانشگاه جامع علمی - کاربردی واحد داده پردازی. در حال حاضر حرفه ی من طراحی و برنامه نویسی وب می باشد . هدف اصلی من از انتخاب رشته نرم افزار کامپیوتر فقط ورود به دنیای طراحی و برنامه نویسی تحت وب بود . در واقع بزرگترین سرگرمی من طراحی و برنامه نویسی می باشد .(چه بهتر که تحت وب باشه!) ساعات زیادی از وقت روزانه من پشت یک کامپیوتر در اتاقم میگذره . به موسیقی زیاد علاقه دارم . دو سبک موسیقی را بسیار می پسندم . موسیقی اصیل ایرانی و موسیقی راک . رنگ مورد علاقه آبی و تیم مورد علاقه پرسپولیسه .

Develop# ، محیط توسعه رايگان برای دات نت کار ها
هاستینگ رايگان دات نت 2.0 و 3.5 بهمراه SQL Server 2005 و بزودی SQL Server 2008
ارسال ایمیل با استفاده از #C و اکانت Gmail
غیر فعال کردن ویژگی Auto Complete فرم های وب
معرفی Packt Publishing ، ناشر کتاب های مرتبط با برنامه نویسی
ResolveUrl و ResolveClientUrl در ASP.net
مشکل کنترل منوی ASP.net و مرورگر Safari شرکت اپل ، بیان دو راه حل دیگر
کتاب جدید کیوان نیری در راه است ، Beginning ASP.NET MVC
وبلاگ Scott Gu به زبان فارسی
اجرای صفحات ASP.net 2.0 با استفاده از Apache
مشکل پرداخت الکترونیکی بانک سامان با کاراکتر " , "!
مشکل کنترل منوی ASP.net و مرورگر Safari شرکت اپل ، بیان یک راه حل
خطای Specified cast is not valid و ASP.net Membership
پیاده سازی "ارسال فرم با فشار دادن دکمه Enter" در ASP.net 2.0
ASP.NET Ajax client-side framework failed to load و VS2008 Final Version
WinInet Error Codes (12001 through 12156)
مقداردهی به یک TextBox از نوع Password از طریق Code Behind
Register کردن یک UserControl در Web.config و بیان یک محدودیت جالب
Graffiti Beta 2 ارائه شد.
استفاده از ASP.net Ajax 1.0 و net Framework 2.0. در VS2008
Google Chart API یک راه حل ساده برای تولید چارت
خطای Could not load file or assembly در نسخه نهائی VS2008 و net. 3.5
Microsoft ASP.NET 3.5 Extensions ارائه شد.
اضافه کردن کدهای مربوط به Web Statisticsدر Graffiti CMS
ویجت هائی که در Graffiti Beta 1 ارائه شدند.
امکانات جدیدی که در نسخه دوم Graffiti قرار است ارائه شوند .
Graffiti Beta 1 ارائه شد.
بومی سازی در ASP.net - وب سايت چند زبانه - بخش اول
غیر فعال کردن button در صورت کلیک بر روی آن ، یک راه حل
نسخه جدید ASP.net Ajax Control Toolkit ارائه شد.
تغییر تنظیمات پیش فرض در کنترل های ASP.net Ajax Control Toolkit
راه حلی برای رفع مشکل اجرای کند صفحات localhost بوسیله فایرفاکس در ویستا
دو خبر جدید در رابطه با دات نت
آقای Scott Gu و کنفرانس لاس وگاس
<October 2008>
SunMonTueWedThuFriSat
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678
RSS 2.0 | Atom 1.0 | CDF
Google Reader
del.icio.us blog.mehdiVK.net latest Posts
Add to my Yahoo!
Subscribe with Bloglines
Subscribe in NewsGator Online

my Feedster
Add to my AOL
Furl blog.mehdiVK.net latest Posts
Subscribe to Rojo


Total Posts: 152
This Year: 61
This Month: 13
This Week: 7
Comments: 107
newtelligence dasBlog 1.9.6264.0


وبلاگ مهدی ولیخانی
وبلاگ مهدی ولیخانی در رابطه با تکنولوژی دات نت
Thursday, October 09, 2008
Develop# ، محیط توسعه رايگان برای دات نت کار ها

Develop# (بخوانید Sharp Develop) یک محیط توسعه (IDE) رايگان ویژه دات نت کارها می باشد ، Develop# یک پروژه متن باز (Open Source) می باشد ، شما می توانید هم Source برنامه و هم فایل اجرائی آن را از وب سايت این پروژه دانلود نمائید. همچنین این ابزار یک تالار گفتگو هم برای بحث و تبادل نظر در رابطه با این ابزار دارد .جهت مشاهده وب سايت این پروژه کلیک نمائید.

همچنین سایر پروژه های این وب سايت را از طریق این لینک مشاهده کنید .


  (  |  |  )  ( Comments [0] | Trackback )
Wednesday, October 08, 2008
هاستینگ رايگان دات نت 2.0 و 3.5 بهمراه SQL Server 2005 و بزودی SQL Server 2008

aspSpider شروع به ارائه هاستینگ رايگان دات نت برای توسعه دهندگان کرده است ، سرویس های رايگان aspSpider شامل پشتیبانی از دات نت 2.0 و 3.5 می باشد . در حال حاضر از SQL Server 2005 پشتیبانی می شود و بزودی SQL Server 2008 نیز پشتیبانی خواهد شد .اینگونه خدمات هاستینگ محل مناسبی هستندتا برنامه های خود را بدون صرف هزینه در یک محیط واقعی تست کنیم.

aspspider می نویسد:

به دلیل محدود بودن تعداد سرورهای ما عضویت نیز دارای محدودیتی است ، پس تا امکان استفاده از این خدمات رايگان برای شما فراهم است می توانید اکانت رايگان خود را ثبت نمائید. ما هیچ سرویس تجاری هاستینگی نداریم . در صورتیکه تمایل دارید هاست خود را ارتقاء بدهید می توانید از خدمات حامیان ما استفاده نمائید.


منبع:


  (  |  |  )  ( Comments [0] | Trackback )
Sunday, October 05, 2008
ارسال ایمیل با استفاده از #C و اکانت Gmail

ارسال ایمیل با استفاده از اکانت Gmail مشابه ساير Mail Server ها می باشد با این تفاوت که Gmail از پروتکل SSL استفاده می کند و پورت ارسال ایمیل آن 587 می باشد و آدرس Smtp آن smtp.gmail.com می باشد . قطعه کد زیر این کار را انجام می دهد:

System.Net.Mail.MailMessage mail = new System.Net.Mail.MailMessage();
System.Net.NetworkCredential cred = new System.Net.NetworkCredential
("Your_Gmail_Account@gmail.com", "Your_Gmail_Password"); mail.To.Add("To_Address"); mail.Subject = "This is a test mail message"; mail.From =
new System.Net.Mail.MailAddress("Your_Gmail_Account@gmail.com"); mail.IsBodyHtml = true; mail.Body = "This is a test mail message"; System.Net.Mail.SmtpClient smtp = new
System.Net.Mail.SmtpClient("smtp.gmail.com"); smtp.UseDefaultCredentials = false; smtp.EnableSsl = true; smtp.Credentials = cred; smtp.Port = 587; smtp.Send(mail);

  (  |  )  ( Comments [0] | Trackback )
Friday, October 03, 2008
غیر فعال کردن ویژگی Auto Complete فرم های وب

مرورگرها برای تسریع در عمل پر کردن فرم های تحت وب ویژگی Auto Complete را برای TextBox ها پیاده سازی کرده اند ، با استفاده از این ویژگی اطلاعاتی که شما در فرم ها وارد می کنید ذخیره شده و در دفعات بعد مقادیری که در مراحل قبل وارد کرده اید به شما پیشنهاد می شود .

موقعیت هائی پیش می آید که شما تمایل داشته باشید که این ویژگی کاربردی را برای یک یا چند فیلد و یا تمام فیلدهای یک فرم تحت وب غیر فعال کنید . برای غیر فعال کردن این ویژگی برای تمامی TextBox های یک فرم مقدار AutoComplete فرم را Off  قرار دهید ، در صورتیکه تمایل دارید این ویژگی برای یک یا چند TextBox غیر فعال شود مقدار AutoComplete آن TextBox ها را  Off قرار دهید .

در ASP.net هم با ست کردن مقدار Disabled برای AutoCompleteType یک TextBox میتوان ویژگی Auto Complete را برای آن TextBox غیر فعال کرد. البته این ویژگی تنها در IE کار می کند در صورتیکه بخواهیم در سایر مرورگر ها هم فعال باشد باید در Directive صفحه مقدار ClientTarget را UpLevel قرار دهیم .


  (  |  )  ( Comments [0] | Trackback )
Thursday, October 02, 2008
معرفی Packt Publishing ، ناشر کتاب های مرتبط با برنامه نویسی

Packt Publishing نام ناشری است که بصورت اتقاقی با آن آشنا شدم ، این ناشر کار خود را در سال 2004 میلادی با چاپ کتابی با عنوان "Mastering phpMyAdmin for Effective MySQL Management" آغاز کرده است و اکنون در زمینه های مختلف برنامه نویسی کتاب های مختلفی چاپ می کند ، می توانید به بخش دات نت این انتشارات بروید و فهرست کتاب های منتشر شده را مشاهده کنید .


  (  |  )  ( Comments [0] | Trackback )
Wednesday, September 24, 2008
ResolveUrl و ResolveClientUrl در ASP.net
کلاس Control در ASP.net شامل دو متد ResolveUrl و ResolveCilentUrl می باشد که هر دو این متدها یک ورودی دارند که همانا مسیر یک فایل است ، خروجی متد اول آدرس یک فایل نسبت به Root است و خروجی متد دوم مسیر یک فایل نسبت به شاخه فعلی است .

بطور مثال اگر ما بخواهیم مسیر فایل Detail.aspx  را نسبت به Root دربیارم کافیست از دستور زیر استفاده کنیم :
ResolveUrl("Detail.aspx");

حال اگر بخواهیم مسیر فایل Icon.png را که در شاخه Images می باشد را نسبت به شاخه فعلی بدست آوریم کافیست از دستور زیر استفاده کنیم:
ResolveClientUrl("~/Images/Icon.png");

  (  )  ( Comments [0] | Trackback )
Saturday, September 20, 2008
مشکل کنترل منوی ASP.net و مرورگر Safari شرکت اپل ، بیان دو راه حل دیگر

چندی پیش در پستی به بیان عدم نمایش صحیح کنترل منوی ASP.net در مرورگر Safari پرداخنم . در آن پست به بیان یک راه حل کلی پرداختم راه حلی که مشکل تمامی کنترل ها در تمامی پروژه های ASP.net ی که بر روی سرور مورد نظر هستند را رفع می کرد . اما یکی از معایت راه حل ارائه شده این بود که مدیران سرورهای به اصطلاح share امکان اعمال این چنین تغییراتی را بر روی سرور نمی دهند و برای ما که بیشتر برنامه هایمان بر روی سرورهای share اجرا می شوند شاید این روش کارائی نداشته باشد . در این پست قصد دارم 2 روش دیگر را برای رفع این مشکل ارائه کنم که نیازی به compile کردن مجدد dll های موجود بر روی سرور نیست و اصولا با خود سرور کاری ندارد و تغییرات بر روی پروژه اعمال می شود.

روش 1 - اضافه کردن "ClientTarget="UpLevel به Page Directive
با اضافه کردن بخش فوق به Page Directive مشکل فوق برای مرورگر سافاری برطرف می شود . به این نکته توجه داشته باشید که در مرورگر فایرفاکس اگر در یک صفحه همزمان از منو و کنترل TreeView استفاده می کنید و برای رفع مشکل نمایش "ClientTarget="UpLevel  را به Page Directive اضافه کرده اید آنگاه عمل Expand کردن Node ها در کنترل Tree View دیگر عمل نمیکند.

روش 2 - اضافه کردن "ClientTarget="UpLevel  در Code Behind
روش اول هم محدودیتی داشت و آن هم مشکل Expand کردن Node ها در TreeView می باشد پس بهتر است "ClientTarget="UpLevel  را در Code Behind اضافه کنیم ، حال می توانیم شرطی بگذاریم که اگر مرورگر Safari بود "ClientTarget="UpLevel  اضافه شود (تا مشکل برطرف شود) در غیر اینصورت "ClientTarget="UpLevel  اضافه نشود تا مشکلی هم برای کنترل TreeView پیش نیاد چرا که تنها سافاری است که مشکل دارد . برای این کار می توانیم از کد زیر استفاده نمائیم :

Protected Sub Page_PreInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreInit
If InStr(Request.ServerVariables("http_user_agent"), "Safari") Then
Page.ClientTarget = "uplevel"
End If
End Sub

  (  )  ( Comments [0] | Trackback )
Friday, August 15, 2008
کتاب جدید کیوان نیری در راه است ، Beginning ASP.NET MVC

آقای کیوان نیری یکی از فعالان عرصه دات نت در تکاپوی نوشتن کتاب جدید خود به نام "Beginning ASP.NET MVC" می باشد ، این کتاب بهمراهی آقای Simone Chiaretta نوشته خواهد شد . این کتاب چهارمین کتاب آقای نیری می باشد ، ایشان پیش از این کتاب های Professional Community Server, Professional Visual Studio Extensibility and Professional Visual Studio 2008 را بهمراه دوستان خود نوشته اند . کتاب دیگری نیز با عنوان "Professional ASP.NET 3.5 MVC" توسط
Rob Conery ، Scott Hanselman و Phil Haack در حال نوشتن است . آرزوی موفقیت های روزافزون را برای آقا کیوان داریم.


  (  )  ( Comments [1] | Trackback )
Tuesday, July 15, 2008
وبلاگ Scott Gu به زبان فارسی

امروز به این وبلاگ در سايت asp.net برخوردم ، بعله ! وبلاگ آقای Gu به زبان فارسی!


  (  )  ( Comments [1] | Trackback )
Friday, June 27, 2008
اجرای صفحات ASP.net 2.0 با استفاده از Apache

برای اجرای صفحات ASP.net 2.0 بر روی Apache کافیست که ابتدا آخرین نسخه Apache را از طریق این لینک دانلود کرده و نصب نمائید .سپس Mod AspDotNet را نیز از طریق این لینک دانلود و نصب نمائید.
بعد از نصب دو برنامه به مسیر زیربروید :

C:\Program Files\Apache Software Foundation\Apache2.2\conf
و فایل httpd.conf را باز کرده و کد زیر را به انتهای فایل اضافه نمائید.

#asp.net
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"

AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj licx rem resources resx soap vb vbproj vsdisco webinfo
<IfModule mod_aspdotnet.cpp>
# Mount the ASP.NET /asp application
  AspNetMount /SampleASP "c:/SampleASP"
#/SampleASP is the alias name for asp.net to execute
  #"c:/SampleASP" is the actual execution of files/folders  in that location

# Map all requests for /asp to the application files
  Alias /SampleASP "c:/SampleASP"
#maps /SampleASP request to "c:/SampleASP"
  #now to get to the /SampleASP type http://localhost/SampleASP
  #It'll redirect http://localhost/SampleASP to "c:/SampleASP"

# Allow asp.net scripts to be executed in the /SampleASP example
  <Directory "c:/SampleASP">
    Options FollowSymlinks ExecCGI
    Order allow,deny
    Allow from all
    DirectoryIndex index.htm index.aspx
#default the index page to .htm and .aspx
  </Directory>

# For all virtual ASP.NET webs, we need the aspnet_client files
  # to serve the client-side helper scripts.
  AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
  <Directory "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
    Options FollowSymlinks
    Order allow,deny
    Allow from all
  </Directory>
</IfModule>
#asp.net

حال شاخه SampleASP را در درایو C خود ایجاد کرده و فایل index.aspx را در آن قرار دهید :

— index.aspx —

<%@ Page Language="VB" %>
<html>
   <head>
      <link rel="stylesheet"href="intro.css">
   </head>
   <body>
       <center>
       <form action="index.aspx" method="post">
           <h3> Name: <input id="Name" type=text>
           Category:  <select id="Category" size=1>
                          <option>One</option>
                          <option>Two</option>
                          <option>Three</option>
                      </select>
           </h3>
           <input type=submit value="Lookup">
           <p>
           <% Dim I As Integer
              For I = 0 to 7 %>
              <font size="<%=I%>"> Sample ASP.NET TEST</font> <br>
           <% Next %>
       </form>
       </center>
   </body>
</html>

حال Apache را ریستارت نمائید.
Start-> Apache HTTP Server 2.2 ->Control Apache Server -> Restart
حال در نوار آدرس مرورگر خودhttp://localhost/SampleASP/index.aspx را وارد نمائید. کار تمام شد ، شما موفق شده اید که از ASP.net 2.0 بر روی Apache اجرا بگیرید.

منبع مطلب + کد صفحه index.aspx

  (  |  )  ( Comments [0] | Trackback )
Monday, June 23, 2008
مشکل پرداخت الکترونیکی بانک سامان با کاراکتر " , "!

سیستم پرداخت الکترونیکی بانک سامان بدین شکل است که شما باید اطلاعاتی شامل:
Merchant ID, Order ID , RedirectUrl , Amount را در قالب متد POST به آدرس http://acquirer.sb24.com/CardServices/controller ارسال نمائید ، بانک سامان بعد از انجام تراکنش و یا کنسل شدن تراکنش از سوی کاربر ، کاربر را به صفحه ی RedirectUrl ارسال می کند اما نکته ای که امروز من به آن پی بردم این است که در RedirectUrl شما نمی توانید از کاراکتر "," استفاده نمائید ، به طور مثال سیستم URL Mapping وبلاگ های DasBlog از همین "," استفاده می کند که نمیتوان با این روش از سرویس پرداخت الکترونیکی استفاده کرد! .در صورتیکه در آدرس RedirectUrl از کاراکتر "," استفاده نمائید در صفحه ورودیه باتک سامان با خطائی نچندان واضح و بامعتی روبرو خواهید شد که دلیلش همین موضوع است ، جهت اطمینان با بخش مربوطه تماس گرفتم و مسئولین مربوطه هم ذکر کردند که کاما کاراکتر نامعتبر می باشد!


  (  )  ( Comments [2] | Trackback )
Thursday, June 19, 2008
مشکل کنترل منوی ASP.net و مرورگر Safari شرکت اپل ، بیان یک راه حل

در صورتیکه از کنترل منوی ASP.net استفاده کرده باشید و احیانا وب سايت خود را در مرورگر Safari شرکت اپل ببینید حتما تعجب خواهید کرد که چرا منو اینگونه نمایش داده می شود ، موتور ASP.net سافاری را بعنوان یک مرورگر ناسازگار برای این کنترل می شناسد و کدهای تولید شده برای این مرورگر با کدهای تولید شده برای IE , FireFox , Opera متفاوت است و به این دلیل است که شما منوی خود را به آن صورت که در IE , Firefox , Opera می بینید در Safari مشاهده نمی کنید ، می توانید کدهای تولید شده را با هم مقایسه کنید . اما برطرف کردن این مشکل نیازمند اعمال تغییراتی کوچک و صد البته ساده بر روی سرور است . ابتدا به مسیر زیر بروید.

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\Browsers

فایل mozilla.browser را در ویرایشگر notepad و یا هر ویرایشگر متنی دیگری باز کرده و به دنبال بخش زیر در این فایل بگردید:

<browser id=”Safari” parentID=”Gecko”>

یکی از زیر شاخه های این بخش کد زیر می باشد که شما باید آن را حذف نمائید:

<controlAdapters>
    <adapter controlType=”System.Web.UI.WebControls.Menu” adapterType=”System.Web.UI.WebControls.Adapters.MenuAdapter” />
</controlAdapters>


بعد از حذف این بخش و ذخیره کردن تغییرات دستور زیر را از طریق خط فرمان اجرا نمائید:

c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regbrowsers.exe -i

حال صفحه خود را بار دیگر در سافاری اپل مشاهده کنید ،مشکل عدم نمایش صحیح کنترل منو برطرف شده است :

قبل از تغییرات


بعد از تغییرات
منبع:Big-O.com
در صورتیکه میخواهید بک آپ قبل از اعمال تغییرات داشته باشد خواهشا فایل mozilla.browser را در مسیری دیگر ذخیره کنید نه در همین مسیر و با نام دیگری چون با مشکل مواجه خواهید شد!
  (  )  ( Comments [0] | Trackback )
Friday, April 11, 2008
خطای Specified cast is not valid و ASP.net Membership

تا آنجائی که می توانید سعی کنید که جداول مربوط به Membeship را اصلا تغییر ندهید چون با تغییر دادن جداول به احتمال زیاد با خطای Specified cast is not valid در هنگام کار با کلاس Membership مواجه خواهید شد و به عبارت دیگر اگر این جداول را تغییر داده اید و از این خطاها مشاهده می کنید بدانید که مشکل این است که نباید این جداول را تعییر می دادید مایکروسافت پیشنهاد می دهد که تا حد امکان از تغییر دادن جداول بپرهیزد . این لینک و این لینک دو نمونه از همین خطا هستند که بدلیل تغییر در جداول برای کاربران رخ داده اند.


  (  )  ( Comments [2] | Trackback )
Sunday, April 06, 2008
پیاده سازی "ارسال فرم با فشار دادن دکمه Enter" در ASP.net 2.0

بسیاری از استفاده کنندگان از وب سايت ها و برنامه های تحت وب عادت دارند که برای ارسال فرم هائی که پر می کنند از فشار کلید Enter استفاده کنند . در این مطلب به معرفی 2 روش ساده جهت پیاده سازی این تکنیک در ASP.net میپردازیم .

تعریف دکمه پیشفرض برای یک فرم :
برای هر تگ فرم در ASP.net می توانید یک defaultButton تعریف کنید . این مشخصه زمانی مورد استفاده قرار میگیرد که کاربر کلید Enter کیبورد خود را فشار داده باشد و در واقع رویداد کلیک مربوط به دکمه ای که شما تنظیم کرده اید اتفاق خواهد افتاد . با تعرف defaultButton برای یک فرم در واقع دکمه submit فرم را مشخص کرده اید .

تعریف دکمه پیشفرض ارسال در سطح یک بخش از فرم :
فرض کنید که در یک صفحه 2 بخش عضویت در سايت و ورود کاربران داشته باشید ، میخواهیم روشی را پیاده سازی کنیم که کاربر در صورتیکه در بخش "عضویت در سايت" بود اگر کلید Enter را فشار داد پروسه ی مربوط به عضویت شروع شود و در صورتیکه در بخش "ورود کاربران" بود پروسه ی مربوط به ورود کاربران رخ دهد . برای این کار می توانید از Panel استفاده نمائید.برای این کار کافیست کلیه کنترل های مورد نظر خود را در یک Panel قرارداده و اینبار DefaultButton پنل خود را مقداردهی کنید .


  (  )  ( Comments [1] | Trackback )
Saturday, April 05, 2008
ASP.NET Ajax client-side framework failed to load و VS2008 Final Version

چند روز پیش یک خطای بسیار زیبا در هنگام باز کردن VS 2008 Beta2 برایم نمایان میشد و اعلام میکرد که این محصولی که شما استفاده می کنید به پایان اعتبار خودش رسیده و خوب من هم هی تنبلی میکردم و نسخه نهائی رو از سايت مایکروسافت دانلود نمیکردم ، بصورت موقت تاریخ سیستم رو کشیدم عقب تا کارمان راه بیفتد . بعد از دانلود نسخه 90 روزه VS 2008 Professional Edition از سايت مایکروسافت به حجم 3.5 گیگا بايت و کرک کردن آن جهت رسیدن به یک VS بدون محدودیت و رایت بر روی یک فروند DVD تصمیم گرفتم که Beta 2 را پاک کرده و Final Version را بنصبم . خوب در ابتدا با خود فکر کردم اگه یه موقع این کرک کار نکرد باز 3 ماه دیگه کی حوصله داره اینو از نو نصب کنه پس تصمیم به این گرفتم که چی ؟ که ساعت سیستم رو تغییر بدهم تا آقای VS به قول خودمون یه دستی از ما بخوره ، خلاصه VS را نصب کردیم و بعدش هم یک پروژه Web Application باز کردیم تا ببینیم این Ajax مشکل داره و یا نه ، F5 رو زدیم و با خطای ASP.NET Ajax client-side framework failed to load. مواجه شدیم ، حالا بیفت به جون گوگل که آقا این مشکل واسه چیه و چرا این خطا میاد ، خلاصه چند ساعتی این VS ما رو معطل خودش کرد تا نهایتا به این صفحه رسیدیم و بعدا هم چون چند روز قبل ترش ایشون در اینجا یه مطلبی در مورد تاریخ و Ajax نوشته بود و با خودم گفتم نکنه این داستان با اون داستان یه مشترکاتی داره ، خلاصه رو یه ویندوز دیگه که تاریخش درست بود VS رو نصب کردم و بنده ی خدا VS مثل موتور بنز کار میکرد بدون هیچ مشکل.


  (  |  )  ( Comments [0] | Trackback )
Saturday, March 15, 2008
WinInet Error Codes (12001 through 12156)

این فهرست خطاها و شرح هر کدومشون ، خیلی چیز بدرد بخوری هست ، تو آخرین پروژه من که یک پروژه تحت وب با استفاده از Ajax بود واقعا بکار آمد و توانسنم به مشتری بگویم که فلان خطائی که مشاهده میکنی دلیلش چیست و من چه کارهائی برای برطرف کردن مشکل انجام داده ام ولی وقتی یک connectionی داری که سرعت receive ان کمتر از 0.5 کیلوبايت در ثانیه هست دیگرکاری از دست من برنمی آید.
مشاهده فهرست خطاها و شرح هر کدام درسايت مایکروسافت


  (  |  )  ( Comments [0] | Trackback )
Saturday, March 01, 2008
مقداردهی به یک TextBox از نوع Password از طریق Code Behind

شاید تست کرده باشید ، شاید هم نه ! اما نسبت دادن مقدار به مشخصه Text یک TextBox که ازنوع Password می باشد عملا کار بیهوده ای است چرا که TextBox از نوع Password بدین روش قابل مقداردهی نمی باشد.اما چاره کار چیست ؟ می توانید مقدار مورد نظر خود را از طریق اضافه کردن Attribute زیر به TextBox نسبت دهید:

txtPassword.Attributes["Value"] = "YOUR PASSWORD!";

  (  )  ( Comments [0] | Trackback )
Sunday, February 17, 2008
Register کردن یک UserControl در Web.config و بیان یک محدودیت جالب

یکی از امکانات خوبی که در ASP.net 2.0 اضافه شد امکان Register کردن UserControl ها در Web.config و استفاده از آنها در تمامی پروژه بدون Register کردن در بالای صفحات می باشد . به طور مثال فرض کنید که شما یک Side Bar در وب سايت خود دارید که در 80 % صفحات وب سايت شما استفاده می شود و یا یک WYSIWYG دارید که در تعدادی از صفحات استفاده می شود ، Register کردن اینگونه کنترل ها در تمامی صفحات برای استفاده از آنها عملی فوق العاده خسته کننده بود که تا نسخه 1.1 مجبور بودیم که انجام بدیم ، اما خوب نسخه 2 تکنولوژی ASP.net امکان Register کردن در سطح یک پروژه را به شما می دهد .
برای اینکار کافیست که تکه کد زیر را به web.config پروژه خود اضافه نمائید ،

  <system.web>
    <pages>
      <controls>
        <add tagName="tgName" tagPrefix="tgPre" src="~/SomeDir/SomeUC.ascx"/>
      </controls>
    </pages>
  </system.web>

اما یک نکته ای در این صفحه ذکر شده است و آن این است :
When a source is specified, the user control itself must not be in the same directory as the