مشاركة عبر


الإرشادات التفصيلية: ربط عناصر تحكم Silverlight الموجودة إلى الخدمة WCF بيانات

في هذه معاينة، يمكنك إنشاء أحد تطبيقات Silverlight الذي يحتوي على بيانات المرتبطة عناصر التحكم. ترتبط عناصر التحكم إلى سجلات العميل الوصول إليها من خلال خدمة بيانات WCF.

توضح هذه الإرشادات التفصيلية المهام التالية:

  • إنشاء نموذج بيانات الوحدةالتي هو التي تم إنشاؤها من البيانات في قاعدة بيانات النموذجية AdventureWorksLT.

  • إنشاء خدمة بيانات WCFالتي تعرض بيانات في نموذج بيانات الوحدةإلى تطبيقات Silverlight.

  • معالج تكوين مصدر بيانات بتشغيل إلى يعيّن إلى خدمة بيانات وقم بملء الإطار المصادر بيانات.

  • قم بإنشاء التعيين من عناصر تحكم حدود بيانات بواسطة سحب عناصر من الإطار موارد بيانات إلى مصمم Silverlight.

  • إنشاء الأزرار التنقل إعادة توجيه مكالمة و إلى الخلف بين السجلات.

    ملاحظة

    قد يعرض الكمبيوتر الخاص بك بأسماء مختلفة أو مواقع? لبعض Visual Studioعناصر واجهة مستخدم في الإرشادات التالية. Visual Studioيحدد كل من إصدار Visual Studio لديك والإعدادات المستخدمة هذه العناصر. لمزيد من المعلومات، راجع العمل مع إعدادات.

المتطلبات الأساسية

تحتاج إلى المكونات التالية لاستكمال هذه الإرشادات التفصيلية:

  • Visual Studio 2010.

  • الوصول إلى مثيل قيد تشغيل SQL Serverأو SQL الخادم Express الذي يحتوي على قاعدة بيانات نموذج AdventureWorksLT مرفقة ب it. يمكنك تحميل قاعدة البيانات AdventureWorksLT من موقع ويب CodePlex.

معرفة سابقة بالمفاهيم التالية هو مفيدة أيضا، ولكن لا المطلوبة لاستكمال معاينة:

قم بإنشاء مشروع الخدمة

قم بتشغيل هذه معاينة بواسطة إنشاء مشروع تطبيق ويب فارغ إلى المضيف خدمة بيانات WCF.

لإنشاء مشروع الخدمة

  1. من القائمة File (ملف)، أشر إلى New (جديد)، ثم انقر فوق Project (مشروع).

  2. $ $ $ $ المتوقعة و Visual C#‎ أو Visual أساسى ، و ثم تحديد من ويب.

  3. تحديد قالب مشروع تطبيق ويب لـ ASP.NET فارغ.

  4. في الاسم صندوق واكتب من AdventureWorksWebApp ومن ثم انقر فوق ‏‏موافق .

قم بإنشاء طرازات بيانات وحدة الخدمة

لعرض البيانات إلى تطبيق موجود باستخدام خدمة بيانات WCF، يجب تعريف نموذج بيانات للخدمة. في هذه معاينة، قم بإنشاء نموذج بيانات الوحدة.

إلى إنشاء "طرازات بيانات وحدة"

  1. في مشروع قائمة ، انقر فوق إضافة عنصر جديد .

  2. تحديد مشروع طراز بيانات وحدة ADO.NET العنصر.

  3. قم بتغيير الاسم إلى AdventureWorksDataModel.edmx، ثم انقر فوق إضافة.

    يتم فتح معالج ‏‫نموذج بيانات وحدة .

  4. الصفحة اختيار محتويات نموذج ، انقر فوق الإنشاء من قاعدة بيانات، و ثم انقر فوق التالي.

  5. في الصفحة اختيار اتصال بيانات الخاص بك، تحديد واحد الخيارات التالية:

    • إذا كان هناك اتصال بيانات إلى قاعدة بيانات نموذج AdventureWorksLT هو متوفرة في المنسدلة المنسدلة lهوt، حدده.

      أو

    • انقر فوق من اتصال جديد وقم بإنشاء اتصال بقاعدة البيانات AdventureWorksLT.

  6. تأكد من تحديد حفظ إعدادات الاتصال وحدة في ويب.Config خيار و ثم انقر فوق التالي.

  7. في الصفحة اختيار الكائنات قاعدة بيانات الخاصة بك ، توسيع جداول ، وقم بتحديد الجدول العميل.

  8. انقر فوق Finish.

إنشاء الخدمة

قم بإنشاء خدمة بيانات WCFإلى كشف بيانات في نموذج بيانات الوحدة.

إلى إنشاء الخدمة

  1. في مشروع القائمة، انقر فوق إضافة عنصر جديد .

  2. تحديد عنصر مشروع WCF الخدمة بيانات.

  3. في المربع الاسم ، اكتب من AdventureWorksDataService.svc وثم انقر فوق إضافة.

تكوين الخدمة

يجب تكوين الخدمة لتعمل تشغيل نموذج بيانات الوحدةالذي قمت بإنشائه.

إلى تكوين الخدمة

  1. في AdventureWorksDataService.svc رمز ملف، قم باستبدال AdventureWorksDataServiceإعلان فئة باستخدام تعليمات برمجية التالية.

    Public Class AdventureWorksDataService
         Inherits DataService(Of AdventureWorksLTEntities)
    
        ' This method is called only once to initialize service-wide policies.
        Public Shared Sub InitializeService(ByVal config As DataServiceConfiguration)
            config.SetEntitySetAccessRule("*", EntitySetRights.All)
            config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2
        End Sub
    
    End Class
    
    public class AdventureWorksDataService : DataService<AdventureWorksLTEntities>
    {
        // This method is called only once to initialize service-wide policies.
        public static void InitializeService(DataServiceConfiguration config)
        {
            config.SetEntitySetAccessRule("*", EntitySetRights.All);
            config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2;
        }
    }
    
  2. قم بإنشاء مشروع، و التحقق من أن ينشئ بدون أخطاء.

إنشاء تطبيق Silverlight

إنشاء تطبيق جديد Silverlight، ثم إضافة مصدر بيانات للوصول إلى الخدمة.

إلى إنشاء التطبيق Silverlight

  1. في من مستكشف الحل، انقر نقراً مزدوجاً فوق العقدة الحل، انقر فوق إضافة، و حدد مشروع جديد.

    ملاحظة

    في مشاريع Visual Basic عقدة الحل تظهر في مستكشف الحلول فقط عند تحديد إظهار الحل في خانة الفحص عام، مشاريع وحلول، مربع حوار الخيارات.

  2. مشروع جديد الحوار، $ $ $ $ المتوقعة و Visual C#‎ أو Visual أساسى ، و ثم حدد من Silverlight.

  3. تحديد قالب مشروع تطبيق Silverlight.

  4. في الاسم صندوق واكتب من AdventureWorksSilverlightApp ومن ثم انقر فوق ‏‏موافق .

  5. في مربع حوار تطبيق Silverlight جديد صندوق، انقر فوق ‏‏موافق .

إضافة مصدر البيانات إلى التطبيق Silverlight

إنشاء مصدر بيانات هو استناداً إلى البيانات التي يتم إرجاعها بواسطة الخدمة.

لإنشاء مصدر بيانات

  1. في قائمة بيانات ، انقر فوقإظهار مصادر البيانات.

  2. في نافذة مصادر البيانات ، انقر فوقإضافة مصدر بيانات جديد.

    يتم فتح معالج تكوين مصدر البيانات.

  3. في الصفحة اختيار المصدر نوع بيانات من معالج، تحديد الخدمة وثم انقر فوق التالي.

  4. في صندوق الحوار إضافة مرجع الخدمة ، انقر فوق من اكتشاف.

    Visual Studioالبحث عن الحلول الحالية للخدمات متوفر، ويضيفAdventureWorksDataService.svc إلى قائمة الخدمات متوفر في الخدمات صندوق.

  5. في مساحة الاسم صندوق، اكتب من AdventureWorksService.

  6. في المربع الخدمات ، انقر فوق من AdventureWorksDataService.svc و ثم انقر فوق ‏‏موافق .

  7. في الصفحة إضافة مرجع الخدمة ، انقر فوق إنهاء.

    يضيف ‏‫Visual Studio العقد التي تمثل البيانات التي يتم إرجاعها بواسطة الخدمة إلى المصادر البيانات نافذة.

تعريف واجهة مستخدم من نافذة المخطط التفصيلي

إضافة الأزرار إلى نافذة بواسطة تعديل XAMLفي مصمم Silverlight.

إلى إنشاء ‏‏تخطيط نافذة

  1. في مستكشف الحل ، مزدوج-انقر MainPage.xaml.

    نافذة فتح في مصمم Silverlight.

  2. في XAMLعرض للمصمم، إضافة التعليمة البرمجية التالية بين <Grid>علامات:

    <Grid.RowDefinitions>
        <RowDefinition Height="75" />
        <RowDefinition Height="525" />
    </Grid.RowDefinitions>
    <Button HorizontalAlignment="Left" Margin="22,20,0,24" Name="backButton" Width="75" Content="&lt;"></Button>
    <Button HorizontalAlignment="Left" Margin="116,20,0,24" Name="nextButton" Width="75" Content="&gt;"></Button>
    
  3. إنشاء المشروع.

إنشاء عناصر التحكم المرتبطة بالبيانات

قم بإنشاء عناصر التحكم التي تعرض سجلات العميل بسحب العقدة العملاء من الإطار المصادر البيانات إلى المصمم.

إلى إنشاء عناصر تحكم حدود بيانات

  1. في الإطار مصادر بيانات ، انقر فوق قائمة المنسدلة للعقدة العملاء وتحديد تفاصيل .

  2. العملاء بتوسيع عقدة.

  3. لهذا المثال لن تكون بعض حقول المعروضة في هذه الحالة انقر فوق قائمة المنسدلة بعد ذلك إلى العقد التالية وحدد بلا :

    • NameStyle

    • PasswordHash

    • PasswordSalt

    • rowguid

    وهذا يمنع Visual Studioمن إنشاء عناصر التحكم الخاصة بهذه العقد عند أنها يتم إسقاط إلى مصمم. لترتيب هو معاينة، هو يفترض أن لا يرغب مستخدم النهائي لمشاهدة th هو بيانات.

  4. من الإطار المصادر بيانات ، اسحب العقدة Cusإلىmers إلى المصمم تحت butإلىns.

    Visual Studioيقوم بإنشاءXAMLو تعليمات برمجية الذي يقوم بإنشاء التعيين من عناصر التحكم المنضمة إلى بيانات العملاء.

تحميل بيانات من الخدمة

استخدام الخدمة لتحميل بيانات، ثم قم بتعيين بيانات التي تم إرجاعها إلى مصدر بيانات الذي هو مرتبط بعناصر التحكم.

إلى تحميل بيانات من الالخدمة

  1. في المصمم، انقر فوق مساحة فارغ بعد ذلك إلى أحد butإلىns.

  2. في الإطار خصائص ، تحقق من شبكة LayoutRoot هو المحددة ومن ثم انقر فوق علامة تبويب الأحداث.

  3. تحدد موقع حدث تم تحميله و مزدوج-انقر فوقها.

  4. في ‏‏رمز الملف الذي يتم فتحه ( من MainPage.xaml) إضافة using(C#) أو Importsعبارات (Visual أساسى) ل System.Windows.Dataو AdventureWorksSilverlightApp.AdventureWorksService.AdventureWorksLTModel.

    Imports System.Windows.Data
    Imports AdventureWorksSilverlightApp.AdventureWorksService.AdventureWorksLTModel
    
    using System.Windows.Data;
    using AdventureWorksSilverlightApp.AdventureWorksService.AdventureWorksLTModel;
    
  5. قم باستبدال معالج الأحداث بما يلي تعليمات برمجية. تأكد من قيامك باستبدال العنوان localhost في هذا تعليمات برمجية بعنوان مضيف المحلي تشغيل الكمبيوتر التطوير.

    [Visual Basic]

    Private advWorksService As AdventureWorksLTEntities
    Private customersViewSource As CollectionViewSource
    
    Private Sub LayoutRoot_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles LayoutRoot.Loaded
        advWorksService = New AdventureWorksLTEntities(New Uri("https://localhost:5500/AdventureWorksDataService.svc"))
        customersViewSource = Me.Resources("CustomersViewSource")
        advWorksService.Customers.BeginExecute(Sub(result As IAsyncResult)
                                                   customersViewSource.Source = advWorksService.Customers.EndExecute(result)
                                               End Sub, Nothing)
    End Sub
    
    private AdventureWorksLTEntities advWorksService;
    private System.Windows.Data.CollectionViewSource customersViewSource;
    
    private void LayoutRoot_Loaded(object sender, RoutedEventArgs e)
    {
        advWorksService = new AdventureWorksLTEntities(new Uri("https://localhost:54257/AdventureWorksDataService.svc"));
    
        customersViewSource = this.Resources["customersViewSource"]
        as System.Windows.Data.CollectionViewSource;
        advWorksService.Customers.BeginExecute(result => customersViewSource.Source = advWorksService.Customers.EndExecute(result), null);
    }
    

اختبار التطبيق

البناء والتشغيل تطبيق إلى التحقق من أنه يمكنك عرض سجلات cusإلىmer.

لإختبار التطبيق

  1. قائمة بنية ، انقر فوق إنشاء الحل. تحقق من بناء الحل بدون أخطاء.

  2. اضغط المفتاح F5.

  3. تحقق من ظهور اﻷول سجل في جدول "العملاء".

  4. اغلق التطبيق.

    ملاحظة

    إذا كنت ترى خطأ هنا التحقق من تعليمات برمجية يحتوي على منفذ الصحيح لملقم تطوير ASP.NET.

التنقل بين السجلات

قم بإضافة التعليمة البرمجية التي يمكن التمرير خلال السجلات باستخدام < و > الأزرار .

إلى تمكين المستخدمين من إلى التنقل بين سجلات مبيعات

  1. قم بفتح MainPage.xaml في المصمم و انقر نقراً مزدوجاً فوق < زر .

  2. قم باستبدال المنشأ backButton_Clickمعالج حدث باستخدام تعليمات برمجية التالية.

    Private Sub backButton_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles backButton.Click
        customersViewSource.View.MoveCurrentToPrevious()
        If customersViewSource.View.IsCurrentBeforeFirst Then
            customersViewSource.View.MoveCurrentToFirst()
        End If
    End Sub
    
    private void backButton_Click(object sender, RoutedEventArgs e)
    {
        customersViewSource.View.MoveCurrentToPrevious();
        if (customersViewSource.View.IsCurrentBeforeFirst)
            customersViewSource.View.MoveCurrentToFirst();
    }
    
  3. الرجوع إلى المصمم، وانقر نقراً مزدوجاً فوق > زر .

    Visual Studioيفتح الملف تعليمات برمجية-الخلف و إنشاء جديدnextButton_Clickhوler حدث.

  4. قم باستبدال المنشأ nextButton_Clickمعالج حدث باستخدام تعليمات برمجية التالية.

    Private Sub nextButton_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles nextButton.Click
        customersViewSource.View.MoveCurrentToNext()
        If customersViewSource.View.IsCurrentAfterLast Then
            customersViewSource.View.MoveCurrentToLast()
        End If
    End Sub
    
    private void nextButton_Click(object sender, RoutedEventArgs e)
    {
        customersViewSource.View.MoveCurrentToNext();
        if (customersViewSource.View.IsCurrentAfterLast)
            customersViewSource.View.MoveCurrentToLast();
    }
    

اختبار التطبيق

البناء والتشغيل تطبيق إلى التحقق من أنه يمكنك عرض والتنقل بين السجلات cusإلىmer.

لإختبار التطبيق

  1. قائمة بنية ، انقر فوق إنشاء الحل. تحقق من بناء الحل بدون أخطاء.

  2. اضغط المفتاح F5.

  3. تحقق من ظهور اﻷول سجل في جدول "العملاء".

  4. انقر فوق < و > الأزرار الانتقال إلى الخلف والإمام سجلات العميل.

  5. اغلق التطبيق.

    ملاحظة

    إذا كنت ترى خطأ هنا التحقق من تعليمات برمجية يحتوي على منفذ الصحيح لملقم تطوير ASP.NET.

الخطوات التالية

بعد إكمال هذه معاينة، يمكنك تنفيذ المهام ذات الصلة التالية:

  • تعلم كيفية إلى حفظ التغييرات مرة أخرى إلى قاعدة بيانات. ل المزيد من المعلومات، راجع ربط بيانات.

  • تعلم كيفية إلى تضمين المزيد من الميزات التي تستخدم خدمات بيانات WCFفي تطبيقات Silverlight. للحصول على مزيد من المعلومات، راجع الخدمات بيانات ADO.NET (Silverlight).

راجع أيضًا:

موارد أخرى

الوصول إلى بيانات وبنيات بيانات