راهکارهای موثر در ASP.Net

راهکار 9 - 6 : فیلتر کردن داده در صفحه به وسیله کدهای مورد نظر ( Declarative Syntax )

مقدمه :

از کنترل Query Extender می توان برای فیلتر کردن داده ها بدون نیاز به طراحی صریح query ها و کدهای سرور داده و سپس نمایش آنها در صفحه استفاده کرد . کنترل Query Extender ، دارای مزیت های زیر می باشد :

  • فراهم نمودن روش ها و امکانات بهتر و ساده تر جهت فیلتر کردن اطلاعات مورد نظر به جای استفاده از عبارت Where .
  • فراهم کردن یک زبان جستجو ( query ) مشترک بین کنترل LinqDataSource ، کنترل EntityDataSource و پایگاه داده .
    برای مثال اگر شما از کنترل Query Extender با سایر کنترل های سرور داده در صفحات Asp.Net استفاده کنید ، دیگر برای فراهم نمودن امکان جستجو و فیلترینگ داده به دستورات SQL و عبارت های Where  نیازی نخواهید داشت .
  • پشتیبانی از انواع روش های مختلف جستجو و فیلترینگ داده که هم بصورت تکی و هم چند منظوره می توان از آنها استفاده کرد . شما می توانید به راحتی از کنترل Query Extender در میان کدها و تگ های یک صفحه وب برای جستجو و فیلتر کردن اطلاعات استفاده نمایید .

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

  • طراحی یک سایت داده ای Asp.Net .
  • اضافه کردن اطلاعات به وب سایت خود در ویژوال استودیو .
  • استفاده از کنترل LinqDataSource برای دسترسی به داده های مورد نظر .
  • استفاده از قابلیت های فیلترینگ داده برای نمایش اطلاعات مورد نظر .
  • نمایش اطلاعات در قالب جداول به وسیله کنترل GridView .

برای حمایت از این پروژه ، کتاب راهکارهای موثر در ASP.Net را دانلود نمایید ...

دانلود فایل عملی پروژه و نسخه PDF راهکار

پیش نیازها :

برای اجرای این راهکار نیاز دارید تا برنامه های زیر بر روی سایت شما نصب شده باشد :

  1. Microsoft Visual Studio .
  2. Microsoft .NET Framework version 2.0 یا بالاتر ( همراه با ویژوال استودیو نصب می شود ) .
  3. SQL Server Express که بر روی کامپیوتر شما نصب شده باشد . این برنامه معمولا با ویژوال استودیو نصب می شود و پایگاه داده AdventureWorks که در فایل پروژه راهکار قرار داده شده است .

مرحله اول - طراحی یک سایت Asp.Net :

در مرحله اول از راهکار بایستی یک سایت ASP.Net را برای اجرای پروژه خود ایجاد نمایید . فرض بر این است که سایت را قبلا ایجاد کرده و یا با نحوه اجرای آن آشنایی دارید ، در غیر اینصورت به راهکار شماره 1-1 : نحوه ایجاد یک وب سایت ASP.Net در ویژوال استودیو بروید .
نکته مهم : حتما در هنگام طراحی اولیه سایت ، یک فایل aspx به نام FilterDewo.aspx به سایت اضافه نمایید .

مرحله دوم - اضافه کردن اطلاعات به وب سایت :

در این مرحله از راهکار قصد داریم تا پایگاه داده AdventureWorks را به سایت اضافه نماییم . اگر سایت شما از قبل به این پایگاه داده متصل است ، نیاز به انجام این مرحله ندارید .

نحوه اضافه کردن فایل پایگاه داده به پروژه :

نکته : پایگاه AdventureWorks.MDF همراه با فایل عملی سایت ، در ضمیمه راهکار قرار دارد .

  1. در منوی Solution Explorer ، بر روی پوشه App_Data کلیک راست کرده و گزینه Add Existing Item را انتخاب نمایید تا پنجره آن مطابق تصویر زیر باز شود ( اگر سایت دارای پوشه App_Data نیست ، آن را از طریق گزینه Add ASP.NET Folder در منوی Solution Explorer به سایت اضافه نمایید ) :


  2. از طریق ویزارد Add Existing Item ، فایل پایگاه داده AdventureWorks را پیدا کرده و با زدن دکمه Add آن را به پروژه اضافه نمایید . ویژوال استودیو یک کپی از این فایل پایگاه داده را به وب سایت شما اضافه می کند . مرحله بعدی طراحی مدل دیتا ( Data Model ) است . در این راهکار ، از مدل LINQ to SQL برای طراحی مدل دیتا استفاده می کنیم . بصورت زیر :
  3. مجددا در منوی Solution Explorer برنامه ، بر روی نام وب سایت کلیک کرده و گزینه Add New Item را انتخاب نمایید تا پنجره آن بصورت زیر باز شود :


  4. در قسمت Installed Templates ، یک فایل LINQ to SQL Classes را انتخاب کرده و نام آن یک نام دلخواه مثل AdventureWorks.dbml تعیین کنید . سپس گزینه Add را بزنید .
  5. اگر برنامه از شما سوال نمود که بایستی پوشه App_code را ایجاد نمایید . با زدن دکمه yes آن را تعیین نمایید . سپس فایل جدید ایجاد شده در پنجره Object Relational Designer باز می شود . فایل ها و کلاس های کد سراسری برنامه ، در پوشه App_Code قرار می گیرند .
  6. در محیط Design پنجره باز شده ، منوی Server Explorer را انتخاب کرده و سپس از درون آن پایگاه داده AdventureWorks را باز نمایید . از پوشه Tables پایگاه داده ، جدول Product را درگ کرده و بر روی Object Relational Designer رها نمایید . جدول فوق و فیلدهای آن بصورت موجودیت هایی در پنجره designer نشان داده می شوند . به صورت زیر :


  7. فایل dbml. را ذخیره کرده و ببندید . همچنین برای تکمیل فرایند ساختن مدل دیتا ، از منوی Build برنامه ، دستور Build را کلیک نمایید .

مرحله سوم - اضافه کردن کنترل سرور داده ( Data Source Control ) :

مرحله بعدی در راهکار اضافه نمودن یک کنترل سرور داده به صفحه برای کار و ارتباط با پایگاه داده AdventureWorks است . کنترل Query Extender که می خواهیم از آن برای فیلترینگ و جستجو داده استفاده کنیم ، فقط از کنترل های LingDataSource و EntityDataSource پشتیبانی می کند . بنابراین ما یک کنترل LinqDataSource را بصورت زیر به صفحه اضافه می کنیم :

  1. فایل FilterDemo.aspx را که در مرحله اول ( ساخت اولیه سایت ) ایجاد کرده بودیم را باز کنید .
  2. به نمای Design رفته و از بخش Data ی منوی Toolbox ، یک کنترل LinqDataSource را به صفحه اضافه کنید .
  3. در منوی Smart tag کنترل که بصورت یک فلش بر روی آن قابل مشاهده است ، بر روی لینک Configure Data Source کلیک نموده تا پنجره مربوطه باز شود  . در پنجره باز شده ،  گزینه Show Only Data Context Objects را علامت بزنید .همانند تصویر زیر :


  4. در زیر قسمت Choose your context object ، گزینه AdventureWorksDataContext را علامت زده و سپس دکمه Next را بزنید .
  5. در قسمت بعدی ، از بخش Table ، گزینه Products    Table < Product  را انتخاب کنید . همچنین در بخش Group By گزینه None را برای عدم دسته بندی اطلاعات بر مبنای فیلد خاصی علامت بزنید .
  6. در قسمت Select ، تمامی ستون های جدول را انتخاب کرده و گزینه Finish را بزنید . به صورت زیر :


  7. پس از پایان کار به نمای Source کد بروید . کد کنترل LinqDataSource بایستی بصورت زیر درآمده باشد :
    کد <asp:LinqDataSource ID="LinqDataSource1" runat="server"
        ContextTypeName="AdventureWorksDataContext" EntityTypeName=""
        TableName="Products">
    </asp:LinqDataSource>

مرحله چهارم - فیلتر کردن اطلاعات با استفاده از کدهای صریح :

در این بخش ، قصد داریم تا قابلیت جستجو برای اطلاعات مورد نظرمان را به صفحه اضافه نماییم . برای این منظور از کنترل های کادر متن ( TextBox ) برای دریافت مقادیر مورد نظر کاربر جهت جستجو و یک کنترل Query Extender که مبنای عملیات جستجوی آن بر اساس مقادیر ورودی کاربر است ، استفاده خواهیم کرد . کنترل Query Extender برای جستجوی اطلاعات ، امکان وارد نمودن کدهای صریح را داراست . .در این راهکار از خواص زیر در کنترل Query Extender برای فیلتر کردن اطلاعات استفاده می کنیم :

  • خاصیت SearchExpression : به وسیله این خاصیت می توان به دنبال یک مقدار معین مثل یک رشته متنی با عدد پرداخت .
  • خاصیت RangeExpression : به وسیله این خاصیت می توان به دنبال رکورد یا رکوردهایی بگردید که مقدار خاصیت یک یا چند فیلد آنها در یک محدوده عددی خاصی مثل 100 تا 1000 قرار دارد .
  • خاصیت PropertyExpression : به وسیله این خاصیت می توانید یک query بسازید که بر مبنای مقدار و نوع اطلاعات یک فیلد داده ای عمل کند . مثلا به دنبال رکوردهایی باشد که مقدار یک فیلد  آنها از نوع Boolean یا با مقدار true باشد .
  • CustomExpression : به وسیله این خاصیت می توانید یک query دلخواه به زبان LINQ را برای جستجو اطلاعات مورد نظرتان ایجاد نمایید .

اطلاعاتی که در این راهکار به وسیله هریک از خواص فوق جمع آوری می شود ، به وسیله یک کنترل GridView نمایش داده خواهد شد .

مرحله پنجم - اضافه کردن کنترل های مورد نظر جهت فیلتر نمودن اطلاعات :

  1. در صفحه FilterDemo.aspx به نمای کد Source رفته ، درون تگ body صفحه ، سپس از کد کنترل LinqDataSource ، کد زیر را وارد نمایید :
    کد <asp:QueryExtender ID="QueryExtender1" runat="server"   TargetControlID="LinqDataSource1" >
    </asp:QueryExtender>
  2. کد فوق یک کنترل Query Extender را به صفحه اضافه نموده و کنترل LinqDataSource1 که در مرحله قبل ایجاد نمودیم ، را نیز به عنوان منبع داده ای آن تعیین می کند .
  3. در مرحله بعدی یک شی Search Expression را به کنترل اضافه می کنیم تا بر مبنای مقدار متنی وارد شده در یک کادر کتن بر روی صفحه ، به جستجوی اطلاعات در جدول بپردازد .

نحوه جستجو بر مبنای یک عبارت متنی ( String ) :

  1. از منوی Toolbox برنامه یک کنترل کادر متن (TextBox) را بر روی صفحه قرار دهید .
  2. در مقابل تگ کنترل TextBox عبارت : Search را برای ایجاد عنوان کنترل اضافه نمایید .
  3. خاصیت ID کنترل TextBox را به مقدار SearchTextBox تغییر دهید . در نهایت کنترل بصورت زیر در خواهد آمد :
    کد Search : <asp:TextBox ID="SearchTextBox" runat="server" />
  4. بین تگ باز و بسته کنترل Query Extender ، یک فیلتر Search Expression را مطابق کد زیر وارد نمایید :
    کد <asp:SearchExpression SearchType="StartsWith" DataFields="Name">
            <asp:ControlParameter ControlID="SearchTextBox" />
    </asp:SearchExpression>
  5. کد فوق ، جدول Products را برای یافتن رکوردهایی که مقدار Name آنها با مقدار وارد شده در کادر متن توسط کاردبر ، شروع می شود ، جستجو می کند .
  6. همچنین از منوی Toolbox ، یک کنترل دکمه فرمان Button را بر روی صفحه قرار داده و مقدار خاصیت Text آن را بر روی مقدار Search تنظیم کنید . کد آن بصورت زیر می شود :
    کد <asp:Button ID="Button1" runat="server" Text="Search" />
  7. در پایان نیز یک کنترل GridView را برای نمایش اطلاعات خروجی بر روی صفحه قرار دهید ، کد آن بایستی همانند مثال زیر باشد :
    کد <asp:GridView ID="GridView1" runat="server"
          DataSourceID="LinqDataSource1"
          DataKeyNames="ProductID" AllowPaging="True">
    </asp:GridView>
  8. همانطور که در کد GridView مشاهده می کنید ، منبع داده آن ، کنترل LinqDataSource1 و فیلد اصلی یا کلید آن نیز ، فیلد ProductID است . همچنین قابلیت صفحه بندی ( AllowPaging ) کنترل بر روی true تنظیم شده است .

امتحان کردن سیستم جستجوی متن :

اکنون شما می توانید سیستم جستجوی متنی را که ایجاد کرده بودید را امتحان نمایید . برای این منظور مراحل زیر را انجام دهید :

  1. کنترل های Ctrl+F5 را برای اجرای صفحه بزنید .
  2. متنی را در کادر متن Search وارد نموده و بر روی دکمه فرمان Search کلیک نمایید . برای مثال اگر کاراکترهای "Ch " را وارد نمایید ، کنترل GridView فقط اطلاعات رکوردهایی را نمایش خواهد داد که مقدار فیلد Name آنها با "Ch" شروع می شود .
  3. توجه داشته باشید که کنترل سرور داده LinqDataSource به حروف بزرگ و کوچک حساس نیست . مرورگر را ببندید .

نحوه جستجو بر حسب محدوده مقادیر ( Range of Values ) :

در مرحله بعدی قصد داریم تا با اضافه کردن یک شی RangeExpression آن را به گونه ای تنظیم نماییم تا به جستجوی رکوردهایی در جدول Products برود که مقدار فیلد ProductModelID آنها بین دو مقدار تعیین شده در دو کادر متن ( Text Box ) است .
برای این منظور مراحل زیر را انجام دهید :

  1. به نمای کد Source رفته و از منوی ToolBox ، دو کنترل کادر متن TextBox را در محل دلخواه بر روی صفحه قرار دهید . یکی از کنترل های کادر متن برای تعیین شروع محدوده عددی جستجو و دیگری برای تعیین پایان محدوده است .
  2. در ابتدای تگ کنترل کادر متن اول عبارت : From  و در ابتدای تگ کنترل دوم عبارت : To را قرار دهید .
  3. ID کنترل کادر متن اول را به مقدار "FromTextBox " و ID کنترل کادر متن دوم را به مقدار "ToTextBox " تعیین کنید . در نهایت کد این کنترل ها بصورت زیر خواهد بود :
    کد From: <asp:TextBox ID="FromTextBox" runat="server" ></asp:TextBox>
    To: <asp:TextBox ID="ToTextBox" runat="server" ></asp:TextBox>
  4. مجددا در بین تگ باز و بسته کنترل Query Extender ، فیلتر RangeExpression را برای انجام عمل جستجو اضافه کنید .کد زیر مقادیر فیلد ProductModelID رکوردهای جدول را در بین محدوده های تعیین شده ، جستجو می کند :
    کد <asp:RangeExpression DataField="ProductModelID"   MinType="Inclusive"   MaxType="Inclusive">
    </asp:RangeExpression>
  5. همچنین کد زیر را برای اتصال کنترل های کادر متن به عبارت RangeExpression ، درون تگ باز و بسته وارد کنید :
    کد <asp:ControlParameter ControlID="FromTextBox" />
    <asp:ControlParameter ControlID="ToTextBox" />
  6. در نهایت کد فیلتر Range Expression بصورت زیر خواهد بود :
    کد <asp:RangeExpression DataField="ProductModelID" MinType="Inclusive" MaxType="Inclusive">
         <asp:ControlParameter ControlID="FromTextBox"/>
         <asp:ControlParameter ControlID="ToTextBox"/>
    </asp:RangeExpression>

امتحان کردن جستجو بر حسب محدوده مقادیر :

در این مرحله قصد داریم تا سیستم جستجو در محدوده مقدار را امتحان کنیم . برای این منظور مراحل زیر را انجام دهید :

  1. با زدن کلیدهای Ctrl+F5 صفحه را اجرا نمایید .
  2. دو مقدار را در کادرهای متن From و To وارد نموده و بر روی دکمه فرمان Search کلیک نمایید . برای مثال عددهای 30 و 40 را در کادر متن وارد نمایید . اطلاعات خروجی از جستجو ، رکوردهایی خواهد بود که مقدار فیلد ProductModelID آنها بین 30 و 40 است .
  3. مرورگر را ببندید .

نحوه جستجو بر حسب یک مقدار Boolean :

در این مرحله از راهکار یک شی PropertyExpression را به پروژه اضافه نموده و آن را به گونه ای تنظیم می کنیم تا بر حسب یک مقدار Boolean که توسط یک کنترل CheckBox تعیین می شود ، به جستجو مقادیرمورد نظر بپردازد .
برای این منظور مراحل زیر را انجام دهید :

  1. از منوی Toolbox برنامه ، یک کنترل CheckBox را بر روی صفحه قرار داده و ID آن را برابر با MakeCheakBox قرار دهید .
  2. در مقابل تگ ابتدایی کنترل checkBox همانند کد زیر یک عبارت مثل "Make More" را برای ایجاد یک عنوان اضافه نمایید :
    کد Make More : <asp:CheckBox ID="MakeCheckBox" runat="server" />
  3. همچنین بین تگ باز و بسته کنترل QueryExtender ، در زیر المنت RangeExpression ، المنت PropertyExpression را برای ایجاد عمل جستجو اضافه نمایید . همانند کد زیر :
    کد <asp:PropertyExpression> </asp:PropertyExpression>
  4. درون المنت PropertyExpression که در مرحله قبل اضافه کردید ، یک المنت پارامتر ControlParameter برای اتصال کنترل CheckBox به عبارت جستجو اضافه نمایید . ID المنت Control Parameter را برابر با ID کنترل CheckBox یعنی MakeCheckBox قرار دهید .
  5. همچنین مقدار خاصیت Name در المنت ControlParameter را برابر با مقدار MakeFlag قرار دهید که برابر با ستونی است که فیلتر می شود . در نهایت که بصورت زیر خواهد شد :
    کد <asp:PropertyExpression>
         <asp:ControlParameter ControlID="MakeCheckBox" Name="MakeFlag" />
    </asp:PropertyExpression>
  6. پس از انجام مراحل فوق برای تست کد جستجو ساخته شده ، صفحه را با زدن کلیدهای Ctrl+F5 اجرا نمایید .
  7. کادر Make More را علامت زده و گزینه Search را بزنید . برنامه اطلاعات و رکوردهایی که مقدار فیلد MakeFlag آنها برابر با true است ( به  علت علامت زدن کادر انتخابی )  را برمی گرداند . سپس مرورگر را ببندید .

استفاده از چندین فیلتر داده با هم :

شما می توانید چندین فیلتر را نیز بصورت همزمان به کار ببرید . اگر چندین فیلتر را با هم بکار ببرید ، Query بصورت اتوماتیک عبارت AND را برای ادغام فیلترها باهم بکار می برد . در این بخش نحوه استفاده از چندین فیلتر را با هم نشان می دهیم :

  1. کلیدهای Ctrl+F5 را برای اجرای صفحه فشار دهید .
  2. در کادر متن Search عبارت "Ch " را تایپ نموده ، کادر انتخابی Make More را علامت زده و به ترتیب در کادرهای متن From و To مقادیر 30 و 40 را تعیین نمایید و سپس دکمه Search را بزنید .
  3. اطلاعات خروجی شامل رکوردهایی می شود که نام آنها با "Ch" شروع شده ، مقدار فیلد ستون MakeFlay آنها true بوده و همچنین مقدار فیلد ProductModelID اش نیز بین 30 و 40 باشد .

مرحله آخر : استفاده از یک Query دلخواه برای فیلتر کردن اطلاعات :

در مرحله آخر قصد داریم تا با تعیین یک LINQ Query دلخواه ، اطلاعات را بر مبنای آن فیلتر کرده و نمایش دهیم . برای این منظور بایستی امور زیر را انجام دهیم :

  1. ایجاد یک LINQ Query دلخواه در یک فایل کلاس برای صفحه .
  2. اضافه نمودن یک سرور داده و یک کنترل Query Extender به صفحه .
  3. اضافه کردن دستورات لازم به کنترل Query Extender برای اجرای LINQ Query ساخته شده .
  4. اضافه نمودن یک کنترل Grid View برای نمایش اطلاعات استخراج شده .

طراحی Query دلخواه با LINQ :

  1. در منوی Solution Explorer بر روی نام سایت یا برنامه وب کلیک راست نموده و گزینه Add New Item را انتخاب نمایید تا پنجره آن باز شود .
  2. از قسمت Installed Templates ، گزینه Web Form را برای ایجاد یک صفحه جدید انتخاب نموده و نام دلخواهی برای آن تعیین نمایید . ( مثلا Default .aspx ) .
  3. کادر Place Code in seprate file را برای ایجاد فایلی جدا جهت کدنویسی صفحه علامت بزنید . سپس دکمه Add را کلیک کنید .
  4. در منوی Solution Explorer ، بر روی نام صفحه ای که اکنون ایجاد نمودید کلیک راست کرده و گزینه View Code را برای باز کردن فایل کد انتخاب نمایید .
  5. Namespace های زیر را در فایل که برای امکان استفاده از LINQ اضافه نمایید :
    VB کد Imports System.Web.UI.WebControls.Expressions
    Imports System.Data.Linq
    C# کد using System.Web.UI.WebControls.Expressions;
    using System.Linq;
  6. همچنین متدهای زیر را به فایل کد اضافه کنید :
    VB کد Protected Sub FilterProducts(ByVal sender As Object, ByVal e As CustomExpressionEventArgs)
        e.Query = From p In e.Query.Cast(Of Product)( )
        Where p.ListPrice >= 1000
        Select p
    End Sub
    C# کد protected void FilterProducts(object sender, CustomExpressionEventArgs e)
       {
          e.Query = from p in e.Query.Cast<Product>( )
          where p.ListPrice >= 1000
          select p;
      
    }

Query فوق ستون ListPrice جدول Products را جستجو کرده و اطلاعات رکوردهایی که مقدار فیلد List Price آنها از 1000 بیشتر بوده را استخراج می کند .
مرحله بعدی اضافه کردن کنترل سرور داده به صفحه و تنظیم آن برای کار کردن با دیتا مدل موجود است . در این بخش از یک کنترل LinqDataSource بصورت زیر استفاده می شود :

  1. به نمای Design رفته و از منوی Toolbox ، از بخش کنترل های Data یک کنترل LinqDataSource را بر روی صفحه قرار دهید .
  2. بر روی کنترل کلیک راست کرده و از پنل Smart tag آن ، گزینه Configure Data Source را انتخاب نمایید .
  3. گزینه Show only DataContext objects را علامت زده و از بخش Choose your context object ، گزینه AdventureWorksDataContext را انتخاب نموده و Next را بزنید . همانند تصویر زیر :


  4. در قسمت Table ، گزینه Products را و از قسمت Group By گزینه None را انتخاب نمایید . سپس در بخش Select ، کلیه ستون های جدول را علامت زده و بر روی دکمه Finish کلیک نمایید .
  5. در منوی Properties ، خاصیت TableName را نیز به Products تنظیم نمایید .
  6. به نمای Source رفته ، کد کنترل LinqDataSource در نهایت باید بصورت زیر باشد :
    کد <asp:LinqDataSource ID="LinqDataSource1" runat="server"
        ContextTypeName="AdventureWorksDataContext" EntityTypeName=""
        TableName="Products">
    </asp:LinqDataSource>

اجرای فیلتر دلخواه طراحی شده :

در این بخش ، کنترل های لازم را برای اجرای Query به صفحه اضافه نموده و آن را اجرا کنیم :

  1. به نمای Source رفته و در قسمت body ، پس از تگ پایانی کنترل LinqDataSource ، کد زیر را برای قرار دادن یک کنترل Query Extender قرار دهید :
    کد <asp:QueryExtender ID="QueryExtender1" runat="server" TargetControlID="LinqDataSource1">
    </asp:QueryExtender>
  2. بین تگ باز و بسته کنترل Query Extender ، فیلتر داده دلخواه ای را بوسیله تگ CustomExpression ، اضافه کرده ومقدار خاصیت OnQuerying آن را بر روی FilterProducts تنظیم نمایید . همانند کد زیر :
    کد <asp:CustomExpression OnQuerying="FilterProducts"> </asp:CustomExpression>
  3. از منوی Toolbox یک کنترل GridView را به صفحه اضافه کرده و خواص آن را بصورت کد زیر تعیین نمایید :
    VB کد <asp:GridView ID="GridView1" runat="server"
       DataSourceID="LinqDataSource1"
       DataKeyNames="ProductID" AllowPaging="True">
    </asp:GridView>

این کنترل اطلاعات حاصل از Query را نمایش خواهد داد .

امتحان کردن Query دلخواه ایجاد کرده :

اکنون قصد داریم تا Query جستجوی دلخواهی را که در مرحله قبل ساختیم ، تست کنیم . برای این منظور با زدن کلیدهای Ctrl + F5 صفحه را اجرا نمایید . اطلاعات حاصل از Query ، رکوردهایی است که مقدار فیلد ListPrice آنها از مقدار 1000 بیشتر باشد .

دانلود فایل عملی پروژه و نسخه PDF راهکار



راجع این مطلب سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...         >>>>>  ورود به انجمن تخصصی


نطر خودتان درباره این صفحه را با ما در میان گذاشته و در صورت تمایل از Developer1 حمایت نمایید :

آیا مطالب این صفحه برای شما مناسب و مفید بوده است :

نام :                 
آدرس Email :    
 
نظر شما :  
 
سوال امنیتی : پایتخت ایران ؟      
حمایت از سایت Developer1