1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Giáo trình Giảng dạy silverlight 2

112 49 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 112
Dung lượng 2,57 MB

Nội dung

GIÁO TRÌNH GIẢNG DẠY SILVERLIGHT Nhóm tác gi thu c cơng ty Infoway: Ph m Chí Cư ng Tr n Duy Biên Tr n Duy Long Website: www.infomap.vn Email: Contact@infoway.com.vn Infoway Solutions M0C L0C MỤC LỤC: Chương I: Tổng quan silverlight Vì l i có silverlight? Silverlight Các đ9c tính c:a silverlight 3.1 S; k=t h>p c:a WPF XAML 3.2 MB r ng cho ngôn ngC kDch b n 3.3 S; tích h>p vEi Fng dHng có 3.4 SK dHng mơ hình ngơn ngC lLp trình nMn t ng Net Framework công cH đN k=t h>p 3.5 HQ tr> m ng 3.6 HQ tr> ngôn ngC tích h>p truy vSn (LINQ) Ki=n trúc tYng thN mơ hình lLp trình c:a Silverlight 4.1 Ki=n trúc thành ph n 4.2 Các mơ hình lLp trình c:a silverlight Kh hQ tr> trình duy[t, h[ điMu hành cơng ngh[ liên quan 5.1 HQ tr> c:a h[ điMu hành trình duy[t 5.2 Các cơng ngh[ cơng cH liên quan c:a silverlight HưEng d^n cài đ9t sK dHng công cH Silverlight Visual studio 2008 6.1 Các bưEc cài đ9t công cH silverlight Các ví dH th;c hành 7.1 Chương trình đ u tiên “Hello World” Tài li[u tham kh o Chương II: XAML Layout TYng quan vM XAML 1.1 Xaml gì? 1.2 Khai báo đei tư>ng 1.3 Thi=t lLp đ9c tính cho đei tư>ng 1.4 Root elements namespace XAML 1.5 S; ki[n 1.6 Các namescope XAML SK dHng XAMLReader.Load XAML Custom class XAML Type Converter Layout 6.1 Canvas 6.2 StackPanel 6.3 Grid Infoway Solutions M0C L0C Chương III: Sử dụng Silverlight Expression Blend Visual Studio 2008 GiEi thi[u vM công cH phát triNn Expression Blend k=t h>p vEi VS2008 1.1 Expression Blend làm vi[c th= nào? 1.2 NhCng tính có đư>c ti Expression Blend Bjt đ u nhanh vEi Silverlight Expression Blend 2.1 T o m t Project cho Fng dHng Silverlight 2.2 Vl khn hình (Shape) Fng dHng Silverlight 2.3 Thi=t k= Control Fng dHng Silverlight Xây d;ng chương trình Silverlight vEi Expression Blend Visual Studio 2008TriNn khai Fng dHng Chương IV: Các Control User control Silverlight GiEi thi[u vM control phY bi=n c:a Silverlight SDK tích h>p VS2008 Các Control PhY bi=n Silverlight User Control Visual Studio 2008 Chương V: Xử lý đồ họa Silverlight GiEi thi[u Shapes and Drawing 2.1 Ellipse 2.2 Line 2.3 Path 2.4 Polygon 2.5 Polyline 2.6 Rectangle Geometries 3.1 EllipseGeometry 3.2 PathGeometry 3.3 GeometryGroup Brushes 3.1 Solid Color 3.2 Gradient 3.3 Images 3.4 Video 3.5 Deep Zoom Chương VI: Media Animation Animation 1.1 Storyboard 1.2 KeypFrame Animations Infoway Solutions M0C L0C 1.3 Double Animation 1.4 Color Animation 1.5 Point Animation Media 2.1 MediaElement Object 2.2 Controlling Media Playback Interactively 2.3 Timeline Markers 2.4 ServerpSide Playlist Ch ương VII: Làm việc với sở liệu Silverlight GiEi thi[u m t vài công ngh[ đN truy cLp dC li[u Silverlight SK dHng Data Binding SK dHng Isolated Storage Khái quát vM làm vi[c vEi dC li[u XML Truy cLp dC li[u SQL Server vEi WCF Chương VIII: Giao tiếp mạng với silverlight Giao ti=p HTTP b o mLt Silverlight 1.1 M9c đDnh hQ tr> giao thFc HTTP 1.2 KDch b n giao ti=p HTTP 1.3 Giao ti=p m t domain 1.4 Giao ti=p Crosspdomain 1.5 Thi=t lLp tri[u gsi HTTP Các h n ch= truy cLp m ng vEi silverlight Truy cLp web service silverlight 3.1 B o mLt cho truy cLp Service 3.2 T o m t Service vư>t qua ph m vi domain Làm vi[c vEi socket 4.1 HQ tr> giao thFc m ng 4.2 LLp trình m ng b n vEi Socket Mã hóa dC li[u c:a service Chương IX: Hiệu suất hoạt động ứng dụng Silverlight Làm th= đN chương trình c:a b n ch y nhanh Yn đDnh 1.1 ThK nghi[m nhiMu h[ điMu hành trình duy[t 1.2 Đ9t EnableFrameRateCounter cho th i gian phát triNn 1.3 SK dHng Transparent Background 1.4 Tránh vi[c sK dHng kDch b n làm bi=n đYi kích cu font c:a Text 1.5 Tránh sK dHng ch= đ Windowless 1.6 SK dHng Visibility thay cho vi[c sK dHng Opacity rSt nhiMu trư ng h>p không c n đ=n s; có m9t c:a Opacity 1.7 Silverlight sK dHng MultipCore Rendering Media Infoway Solutions M0C L0C 1.8 1.9 1.10 1.11 1.12 1.13 Trong ch= đ FullpScreen, nhCng đei tư>ng không sK dHng Tránh sK dHng thu c tính Width Height đei vEi đei tư>ng MediaElement Tránh sK dHng thu c tính Width Height đei vEi đei tư>ng Path Nguy đY vu CPU sK ly cư ng đ lEn công vi[c Nguy đY vu đei vEi Fng dHng có nhCng Package lEn SK dHng Double.ToString(CultureInfo.InvariantCulture) hi[u qu Double.ToString() 1.14 SK dHng Background Worker 2.1 Bjt đ u vEi vi[c t o m t BackGroundWorker 2.2 T o m t Event handler cho background worker bBi DoWork event 2.3 T o m t event handler cho s; ki[n ProgressChanged c:a backgroundworker 2.4 T o m t s; ki[n cho RunWorkerCompleted 2.5 BY xung s; ki[n vào BackGroundWorker 2.6 Bjt đ u ch y background gsi bBi th: tHc RunWorkerAsync 2.7 H:y bx ho t đ ng c:a background gsi bBi th: tHc CancelAsync Infoway Solutions CHƯƠNG I: T NG QUAN V SILVERLIGHT CHƯƠNG I: TỔNG QUAN VỀ SILVERLIGHT Vì l"i có Silverlight? Sự khó khăn doanh nghiệp xây dựng chiến lược Web Ngày phát triển ứng dụng web doanh nghiệp phần mềm thường đau đầu với khó khăn hỗ trợ trình duyệt hệ điều hành Điều họ muốn với ngôn ngữ công cụ phát triển vốn quen thuộc từ trước đến làm cho họ ứng dụng chạy tốt tảng, trình duyệt Silverlight đời công nghệ phù hợp cho phép họ làm việc Nếu bạn quen thuộc với cơng nghệ Net Framework tiếp cận với Silverlight bạn tích kiện nhiều thời gian chi phí cho cơng nghệ web Nhu cầu cần thiết giới đa phương tiện Các công nghệ plug-in web trước không cho phép bạn truyền tải liệu hình ảnh chất lượng cao 720p HDTV, Trong chất lượng đường truyền mạng tốt nhu cầu xem video chất lượng cao tăng lên đời Silverlight đem đến cho người đam mê giới đa phương tiện thỏa mãn thật Silverlight gì? Silverlight dạng plug-in dựa công nghệ Microsoft Net, độc lập với đa tảng đa trình duyệt, cho phép phát triển ứng dụng đa phương tiện đặc biệt ứng dụng web Silverlight cung cấp mơ hình lập trình lập trình mềm dẻo đồng nhất, hỗ trợ Ajax, Python, Ruby ngơn ngữ lập trình Net Visual basic, C# Khả đa phương tiện silverlight thể mức độ truyền tải âm hình ảnh chất lượng cao cách nhanh chóng hiệu tất trình duyệt Internet Explorer, Firefox, Safari Infoway Solutions CHƯƠNG I: T NG QUAN V SILVERLIGHT Với việc sử dụng Expression Studio Visual Studio, nhà thiết kế phát triển hợp tác cách hiệu cách sử dụng kỹ họ có để làm phát triển sản phẩm web tương lai “Light up the web” Các đ0c tính c2a Silverlight Silverlight kết hợp nhiều công nghệ vào tảng phát triển, cho phép bạn lựa chọn nhiều cơng cụ ngơn ngữ lập trình thích hợp để giải toán bạn Silverlight cung cấp tính sau: 3.1 Sự kết hợp WPF XAML Silverlight gói nhỏ cơng nghệ Windows Presentation Foundation (WPF) Nó mở rộng nhiều Element trình duyệt để tạo giao diện người dùng PWF cho phép bạn tạo đồ họa chiều, hình ảnh động, đa phương tiện nhiều tính phong phú khác máy khách XAML (Extensible Application Markup Language) cung cấp cú pháp đánh dấu đặc trưng cho việc tạo Element 3.2 Mở rộng cho ngôn ngữ kịch Silverlight cung cấp việc mở rộng cho ngôn ngữ kịch (Javascript) số trình duyệt phổ biến để thể việc trình bày giao diện thao tác người dùng cách phong phú 3.3 Sự tích hợp với ứng dụng có Silverlight tích hợp liền mạch với ngơn ngữ javascript mã Ajax ASP.Net để bổ sung chức bạn xây dựng Bạn tạo tài nguyên máy chủ có ASP.NET sử dụng khả Ajax ASP.NET để tương tác với tài nguyên máy chủ mà khơng làm gián đoạn người dùng 3.4 Sử dụng mơ hình ngơn ngữ lập trình tảng Net Framework công cụ để kết hợp Bạn tạo ứng dụng tảng Silverlight sử dụng ngôn ngữ động InronPython ngôn ngữ C# Visual Basic Bạn sử dụng cơng cụ phát triển Visual Studio để tạo ứng dụng tảng Silverlight 3.5 Hỗ trợ mạng Silverlight bao gồm hỗ trợ cho HTTP qua TCP Bạn kết nối tới dịch vụ WCF, SOAP, ASP.NET AJAX nhận định dạng theo cấu trúc XML, JSON hay liệu RSS 3.6 Hỗ trợ ngơn ngữ tích hợp truy vấn (LINQ) Điều cho phép bạn truy cập liệu cách sử dụng cú pháp trực quan tự nhiên mạnh mẽ, gõ đối tượng có ngơn ngữ Net Framework Infoway Solutions CHƯƠNG I: T NG QUAN V SILVERLIGHT Ki5n trúc t7ng th8 mô hình l;p trình c2a Silverlight 4.1 Kiến trúc thành phần Về Silverlight tảng thống nhiều thành phần khác Tuy nhiên chúng tơi nhóm lại thành phần silverlight vào bảng Thành phần Diển tả Nền tảng trình bày sở Các thành phần dịch vụ hướng tới giao diện người dùng tương tác người dùng, bao gồm control cho liệu cho người dùng nhập, thiết bị đa phương tiện, quản lý phân quyền số, trình bày liệu, đồ họa vector, chữ, hình ảnh động bao gồm XAML để đặc tả việc bố trí giao diện Net Framework cho silverlight Là gói nhỏ Net Framework, bao gồm thành phần cá thư viện, kể tương việc tương tác liệu, khả mở rộng control, mạng, garbage collection, CLR Cài đặt cập nhật Là thành phần để sử lý tiến trình cài đặt để đơn giản hóa cho lần cài đặt đầu tiên, tiếp sau cung cấp chế tự động cập nhật tương tác mức thấp Dưới hình ảnh mơ tả thành phần kiến trúc Silverlight với thành phần dịch vụ liên quan khác Core Presentation Components: Tính Dữ liệu vào (input) Mô tả Xử lý liệu đầu vào từ thiết bị phần cứng bàn phím, chuột, bảng vẽ Infoway Solutions CHƯƠNG I: T NG QUAN V SILVERLIGHT Trình bày giao diện người dùng (UI Rendering) Thiết bị nghe nhìn (Media) Controls Xếp đặt Layout Trình bày liệu (Data Binding) DRM XAML thiết bị đầu vào khác Trình bày vector đồ hoạ ảnh bitmap, ảnh động, văn Các tính phát quản lý vài thể loại file âm hình ảnh WMP MP3 Hỗ trợ mở rộng cho control để có khả tùy chỉnh kiểu dáng khuôn mẫu Cho phép khả xếp đặt vị trí động thành phần giao diện người dùng Cho phép việc kết nối liệu đối tượng thành phần giao diện người dùng Khả Quản lý phân quyền số Cung cấp trình phân tách cho XAML Các lập trình viên tương tác với thành phần tảng trình bày sở cách sử dụng XAML để đặc tả XAML yếu tố quan trọng việc tương tác Net Framwork kiểu trình bày Layout, ngồi lập trình viên sử dụng chế quản lý code bên để thao tác với lớp trình bày Net Frame work for Silverlight: Tính Data Base class library Window Communication Foundation (WCF) Common language runtime (CLR) Windows Presentation Foundation controls (WPF) Dynamic language runtime (DLR) 4.2 Mơ tả Hỗ trợ ngơn ngữ truy vấn tích hợp (LINQ) LINQ với đặc tả XML, dễ dang xử lý việc tích hợp làm việc với liệu từ nhiều nguồn khác Hỗ trợ việc sử dụng XML lớp biên đổi hóa (serialization) để xử lý liệu Thuộc thư viện Net Framework, cung cấp chức lập trình chủ yếu việc xử lý chuỗi, biểu thức quy, đầu vào đầu ra, ánh xạ, tập hợp toàn cục hóa Cung cấp tính để đơn giản hóa việc truy cập liệu từ xa Cơ chế bao gồm đối tượng trình duyệt, HTTP request HTTP Response, RSS, JSON, POX, SOAP Cung cấp việc quản lý nhớ, dọn dẹp nhớ thừa, xử lý ngoại lệ… Cung cấp control giầu tính Button, Calendar, CheckBox, DataGrid, DatePicker, HyperlinkButton, ListBox, RadioButton, and ScrollViewer Hỗ trợ việc biên dịch thi hành với tính động ngơn ngữ kịch Javascript IronPython cho chương trình tảng Silverlight Các mơ hình l;p trình c2a silverlight = phiên b@n Silverlight 1.0 cung cCp cho b"n nhCt mEt mơ hình l;p trình Javascript API, cho đ5n phiên b@n Silverlight 2.0 cung cCp c@ hai mơ hình l;p trình Managed API Javascript API Trong Javascipt API chL cho phép b"n gõ mã lOnh Javascript đ8 tương tác vRi trình duyOt Managed API sS dTng đưUc ch5 làm viOc c2a Common Language Infoway Solutions CHƯƠNG I: T NG QUAN V SILVERLIGHT Runtime (CLR) k8 c@ Dynamic Language Runtime (DLR) đ8 biên dYch thi chương trình code (C#, VB\) c2a b"n 4.2.1 Javascript API Trong mEt chương trình silverlight nhúng theo ki8u Javascript API, t@i chL mEt trang XAML đơn l^ thay t@i mEt gói _ng dTng Trang XAML có th8 bao g`m tham chiau URI tb nhcng ngu`n bên máy ch2 khác đo"n video hình @nh Silverlight nhúng sS dTng XAML đ8 t"o mEt đei tưUng mà b"n có th8 thao tác l;p trình vRi javascript lưu trc bên mEt trang HTML Javascript API không cung cCp mEt mơ hình _ng dTng có kh@ hh trU _ng dTng t7 hUp vRi si điau hưRng bên Tuy nhiên cho phép làm nhcng kYch b@n theo ki8u Splash screan B"n có th8 làm si điau hưRng Javascript API bkng cách t@i l"i trang XAML mRi ho0c t@i l"i c@ trang web trình duyOt 4.2.2 Managed API Trong l;p trình silverlight theo ki8u Managed API, b"n có th8 thao tác l;p trình vRi c@ file XAML file code bên Khi mEt Silverlight nhúng t@i file XAML, sl t"o mEt mơ hình mà b"n có th8 gõ bkng mã lOnh bên ( thưmng C#, Visual basic\) Kh@ hh trU trình duyOt, hO điau hành công nghO liên quan 5.1 Hh trU c2a hO điau hành trình duyOt đưUc mô t@ p b@ng dưRi Operating system Internet Explorer Internet Explorer Firefox 1.5, 2.x, and 3.x Safari 2.x and 3.x Windows Vista có — có — Windows XP SP2 có có có — Windows XP SP3 có có có — Windows 2000 — có — — Windows Server 2003 (excluding IA-64) có có có — Mac OS 10.4.8+ (PowerPC) — — — — Mac OS 10.4.8+ (Intel-based) — — có Có 5.2 Các cơng nghO cơng cT liên quan c2a silverlight SS dTng công cT b"n b"n có th8 t"o thay đ7i cách xrp x5p trình bày Layer c2a _ng dTng bkng cách thao tác đ5n canvas control XAML, làm viOc vRi ch_c đ` hsa, L;p trình vRi ngơn ngc Javascript Visual Studio cung cCp công cT hiOu qu@ cho viOc phát tri8n _ng dTng có hh trU thao tác code bên tron TCt c@ phiên b@n có c2a Visual Studio đau có kh@ hh trU Silverlight,Tuy nhiên p phiên b@n mRi cịn hh trU tính đ0c Infoway Solutions CHƯƠNG VIII: GIAO TI P M NG TRONG SILVERLIGHT T;o request HTTP + N*u b;n muCn t;o triPu gOi HTTP c4a b;n, b;n có thE sc d/ng nh1ng l+p đư8c cung cLp namespace System.Net + WebClient + HttpWebRequest HttpWebResponse Nh1ng l+p cho phép b;n t;o request GET hoIc POST cho phép request header mBt vài trư7ng h8p Thêm n1a, b;n có thE thi*t lAp nh1ng l+p đE tăng cư7ng download v+i GET request L+p WebClient L+p WebClient cung cLp sd kiPn đơn gi6n, dda mô hình cho phép b;n t6i xuCng t6i lên suCi strings Các WebClient mBt lda chOn tCt n*u b;n khơng muCn sc d/ng mBt proxy l+p hOc Nói chung, l+p dz sc d/ng, cung cLp tùy chOn đE tùy chWnh message đư8c gci qua m;ng B6ng sau tóm tnt header hJ tr8 cho l+p WebClient Giao th4c HTTP GET POST G5i domain Header đư8c chLp nhAn Header đư8c chLp nhAn G5i Cross+Domain Request header không đư8c chLp nhAn Request headers chLp nhAn thông qua tAp tin cross\domain policy ĐE t;o POST request v+i WebClient t6i lên tAp tin bLt kỳ hoIc nh1ng chuJi, b;n sc d/ng mBt nh1ng phương th?c sau + WebClient ::.OpenWriteAsync + WebClient ::.UploadStringAsync B;n có thE xét header cho POST request thơng qua thuBc tính WebClient ::.Headers Request header ph6i đư8c cho phép tAp tin cross\ domain policy Đo;n mã ví d/ dư+i t;o POST request sc d/ng WebClient // T;o mBt instance c4a WebClient WebClient client = new WebClient(); public Page() { Infoway Solutions CHƯƠNG VIII: GIAO TI P M NG TRONG SILVERLIGHT InitializeComponent(); // Đăng ký hóng sd kiPn UploadStringCompleted client.UploadStringCompleted += new UploadStringCompletedEventHandler(client_UploadStringCompleted); } private void Button_Click(object sender, RoutedEventArgs e) { // T;o request string postRequest = "" + "New Restaurant" + "" + " " + "

There is a new Thai restaurant in town!

" + "

I ate there last night and it was fabulous.

" + "

Make sure and check it out!

" + " " + " " + " " + " Pilar Ackerman" + " packerman@contoso.com" + " " + ""; // Gci request t+i URL c/ thE client.UploadStringAsync(new create?blogID=1234", UriKind.Absolute), postRequest); } Uri("http://blogs.contoso.com/post\ // Hóng sd kiPn UploadStringCompleted void client_UploadStringCompleted(object sender, UploadStringCompletedEventArgs e) { // HiEn th k*t qu6 nhAn đư8c if (e.Error != null) tb1.Text = e.Error.Message; else tb1.Text = e.Result; } 1.6 Infoway Solutions CHƯƠNG VIII: GIAO TI P M NG TRONG SILVERLIGHT Các h7n ch truy c p m7ng v8i silverlight Phiên b6n Silverlight hJ tr8 hai kiEu sau đE ?ng d/ng k*t nCi t+i máy ch4 tU xa: L+p WebClient nh1ng l+p HTTP có namespace System.Net – nh1ng l+p sc d/ng giao th?c HTTP or HTTPS cho giao ti*p m;ng Nh1ng l+p Sockets namespace System.Net.Sockets – nh1ng l+p cung cLp interface > m?c đB thLp c4a socket có thE đư8c sc d/ng rBng mBt cách rBng rãi giao ti*p m;ng ” c6 hai trư7ng h8p trên, cXn ph6i cung cLp b6o mAt ngăn chIn ?ng d/ng Silverlight k*t nCi t+i tU k*t nCi không đư8c phép Nh1ng mCi đe do; tLn công tU m;ng bao gVm: TLn công tU trCi d.ch v/ (DoS) – MBt sC lư8ng l+n máy tU xa đư8c sc d/ng nhom m/c tiêu tLn công vào mBt trang web đE m/c tiêu không thE request d.ch v/ h8p lP TLn công thay đri thông tin DNS – Sc d/ng DNS đE qu6n lý máy ch4 cAp nhAt l;i tên máy ch4 t+i đ.a chW IP c4a n;n nhân, b>i vAy cho phép truy cAp sg vào máy ch4 khác vào máy ch4 thdc sd c4a website Reverse tunnel attack – Use a remote client’s outgoing connection as a back tunnel to the client’s private network Các sách b6o mAt hP thCng k*t h8p Silverlight đư8c thi*t k* đE ngăn chIn mCi đe dOa m;ng Ngồi ra, hP thCng sách nhom m/c đích cung cLp cho qu6n tr viên kiEm soát nhi:u nguVn ldc tU xa mà khách hàng đư8c phép đE k*t nCi đ*n Trư+c thi*t k* cho m;ng có kh6 br sung gi+i h;n k*t nCi đ*n máy ch4 c4a trang web hoIc web gCc Đi:u có nghĩa trang web đó, mBt ?ng d/ng có thE chW giao ti*p l;i cho triEn khai máy ch4, đó, m;ng lư+i ?ng d/ng đư8c phép đE k*t nCi đ*n máy ch4 mà tU chúng đư8c t6i v: Silverlight bao hJ tr8 k*t nCi cross\domain cho phép mBt ?ng d/ng đE truy cAp vào tài nguyên tU đ.a điEm khác(sub domaint, –) v+i trang web gCc Đây mBt tính quan trOng đE t;o đi:u kiPn cho ?ng d/ng Silverlight sc d/ng d.ch v/ hiPn có web Các sách an ninh hP thCng Silverlight runtime bây gi7, đòi h˜i mBt tAp tin cross\domain policy đư8c t6i v: trư+c sd k*t nCi đư8c phép truy cAp vào tài nguyên Đi:u 6nh hư>ng đ*n sách b6o mAt c4a hP thCng domain qua m;ng truy cAp cho WebClient HTTP l+p namespace System.Net ĐCi v+i sockets, sách an ninh hP thCng Silverlight 6nh hư>ng đ*n quy:n truy cAp c4a c6 trang web gCc cross\domain Chính sách b6o mAt bnt buBc cho bLt kỳ k*t nCi kiEu socket, thAm chí c6 k*t nCi l;i t+i trang web Đi:u Infoway Solutions CHƯƠNG VIII: GIAO TI P M NG TRONG SILVERLIGHT khác tU hành vi ?ng xc Silverlight Beta 1, nơi socket đư8c cho phép k*t nCi đư8c cho phép tU site gCc Các nBi dung phXn cung cLp thông tin chi ti*t v: viPc làm th* đE sc d/ng hP thCng sách b6o mAt Silverlight mơ t6 sách tAp tin đ.nh d;ng đư8c hJ tr8 2.1 Khái niPm b6n v: sách b6o mAt hP thCng Silverlight hJ tr8 hai lo;i tAp tin quy đ.nh cách ?ng sc b6o mAt: TAp tin sách c4a Adobe Flash \ crossdomain.xml TAp tin sách chW có thE đư8c sc d/ng b>i WebClient l+p HTTP namespace System.Net Qua tAp tin sách Flash, cho phép truy cAp vào tLt c6 tên mi:n sg đư8c sc d/ng b>i Silverlight TAp tin sách c4a Silverlight – clientaccesspolicy.xml TAp tin có thE đư8c sc d/ng b>i l+p WebClient l+p HTTP namespace System.Net có thE cho l+p sockets namespace System.Net.Sockets TAp tin sách đ.nh d;ng khác v+i tAp tin sách c4a Flash Trư+c cho phép k*t nCi v+i tài nguyên m;ng, Silverlight sg cC gnng t6i v: tAp tin sách b6o mAt tU tài nguyên m;ng Có hai phương pháp khác đư8c sc d/ng đE t6i v: sách b6o mAt mà ph/ thuBc vào viPc k*t nCi đư8c request tU mBt WebClient hoIc HTTP hoIc l+p đư8c request k*t nCi tU sockets N*u đư8c yêu cXu k*t nCi tU WebClient hoIc l+p HTTP t+i cross\domain site, Silverlight cC gnng t6i v: tAp tin sách b6o mAt bong cách sc d/ng giao th?c HTTP Silverlight đXu tiên cC gnng t6i v: tAp tin sách Silverlight v+i tên "clientaccesspolicy.xml" > gCc c4a site m/c tiêu bong cách sc d/ng giao th?c HTTP N*u tAp tin sách c4a Silverlight tr6 l;i (thAm chí n*u có lJi phân tích cú pháp tAp tin), đư8c sc d/ng sách cho tAp tin mà request cross\domain tLt c6 request t+i máy ch4 cho nh1ng phiên làm viPc c4a ?ng d/ng Silverlight N*u tAp tin sách Silverlight khơng đư8c tìm thLy, Silverlight sau sg cC gnng t6i v: mBt tAp tin sách Flash có tên "crossdomain.xml" > gCc c4a site m/c tiêu đư8c yêu cXu bong cách sc d/ng giao th?c HTTP Các sách tAp tin Flash ph6i cho phép k*t nCi đ*n tLt c6 tên mi:n cho sg đư8c sc d/ng b>i Silverlight WebClient l+p HTTP Infoway Solutions CHƯƠNG VIII: GIAO TI P M NG TRONG SILVERLIGHT N*u đư8c yêu cXu k*t nCi tU sockets cho trang web (cross\domain site hoIc site gCc), Silverlight cC gnng đE m> mBt k*t nCi TCP vào crng 943 trang web m/c tiêu N*u k*t nCi TCP có thE đư8c thi*t lAp, Silverlight gci chuJi đIc biPt đ*n server đE yêu cXu tAp tin sách Silverlight Silverlight đ8i đE sau nhAn đư8c tr6 l7i tU web m/c tiêu có ch?a tAp tin sách Silverlight N*u tAp tin sách Silverlight đư8c tr6 l;i (thAm chí n*u có mBt lJi phân tích cú pháp tAp tin), đư8c sc d/ng tAp tin sách cho request socket tLt c6 request cho trang web m/c tiêu tLt c6 session c4a ?ng d/ng Silverlight N*u tAp tin sách t6i v: thành cơng phân tích cú pháp cho phép, cuCi m> mBt k*t nCi đ*n host m/c tiêu N*u tAp tin sách t6i v: khơng h8p lP khơng thE phân tích cú pháp mBt cách xác, sau k*t nCi t+i tài nguyên m;ng c4a Silverlight sg b tU chCi yêu cXu k*t nCi sg khơng thành cơng N*u khơng có sách tAp tin đư8c tìm thLy, sau k*t nCi vào m;ng nguyên b tU chCi c4a Silverlight yêu cXu k*t nCi sg không thành công Br sung mBt nh1ng h;n ch* bong cách sc d/ng l+p sockets ?ng d/ng m;ng cho phép k*t nCi chW v+i nh1ng crng ph;m vi 4502\4534 šng d/ng Silverlight chW đư8c phép k*t nCi t+i nh1ng crng vAy sc d/ng socket N*u crng mà b;n truy cAp không ph6i ph;m vi crng này, cC gnng k*t nCi sg thLt b;i ĐE triEn khai tAp tin sách b6o mAt sc d/ng k*t nCi tU WebClient l+p HTTP, qu6n tr viên hP thCng cXn ph6i cLu hình Web service cho mJi đ.a chW IP mà cung cLp cho tAp tin đ.nh nghĩa sách t;o nh1ng tAp tin sách b6o mAt c4a Flash Silverlight đE có thE tìm thLy qua giao th?c HTTP ĐE triEn khai tAp tin sách b6o mAt máy cho socket, qu6n tr viên hP thCng cXn ph6i cLu hình mBt d.ch v/ xác thdc riêng biPt crng 943 cho mJi đ.a chW IP cung cLp đ.nh nghĩa tAp tin sách Truy c p web service silverlight šng d/ng máy khách Silverlight ch;y trình duyPt thư7ng cXn ph6i k*t nCi t+i nhi:u nguVn s> d1 liPu khác MBt ví d/ điEn hình viPc truy cAp d1 liPu vào s> d1 liPu tU mBt máy ch4 hiEn th lên giao diPn ngư7i dùng Silverlight K.ch b6n phr bi*n khác cAp nhAt d1 liPu service thông qua ?ng d/ng Silverlight đE truyEn t6i thơng tin t+i service Nh1ng nguVn d1 liPu ngồi thư7ng đư8c lLy v: tU Web service Nh1ng service có thE SOAP service đư8c t;o sc d/ng Windows Infoway Solutions CHƯƠNG VIII: GIAO TI P M NG TRONG SILVERLIGHT Communication Foundation(WCF) hoIc mBt vài n:n t6ng SOAP khác hoIc chW đơn gi6n HTTP hoIc Service tĩnh šng d/ng Silverlight máy khách có thE truy cAp nh1ng Web service trdc ti*p hoIc sc d/ng proxy đư8c sinh tU metadata đư8c published b>i service.Silverlight cung cLp tính cXn thi*t đE làm viPc v+i mBt lo;t đ.nh d;ng d1 liPu đư8c sc d/ng b>i Service Bao gVm đ.nh d;ng XML, JSON, RSS, Atom Nh1ng đ.nh d;ng d1 liPu đư8c truy cAp sc d/ng Serialization components, Linq to XML, Linq to JSON, Syndication components 3.1 B6o mAt cho truy cAp Service B6o vP ?ng d/ng máy khách Silverlight d1 liPu ngư7i dùng ĐE b6o vP ?ng d/ng silverlight kh˜i nh1ng service đBc h;i, b;n ph6i bi*t v: mBt sC vLn đ: b6o mAt dư+i đây: + Service có thE gci v: nh1ng thông tin mà làm cho ?ng d/ng máy khách Silverlight có thE trình duyPt c4a ngư7i d/ng b treo hoIc lJi Đi:u có thE v+i bLt kỳ d1 liPu có đ.nh d;ng XML, JSON, RSS, Atom SOAP ĐE tránh viPc cXn thdc hiPn sau: + Tránh kh>i t;o giao ti*p t+i service không tin tư>ng mà b lJi hoIc treo sg gây mLt d1 liPu c4a ?ng d/ng c4a ngư7i dùng Ví d/, lưu l;i cơng viPc c4a ngư7i dùng xuCng máy trư+c kh>i t;o giao ti*p + Tránh td đBng kh>i t;o t+i service không tin tư>ng, mà không cho phép ngư7i dùng lda chOn Đi:u có thE d}n t+i ?ng d/ng c4a b;n khơng thE dùng đư8c Hãy ghi nh+ rong mBt d.ch v/ đBc h;i có thE khơng ln tr6 v: d1 liPu đBc h;i B6o vP Service Hãy ghi nh+ rong service mà b;n publish cho ?ng d/ng máy khách Silverlight có thE đư8c truy cAp c4a bLt kỳ ngư7i đư8c sc d/ng v+i nh1ng cách mà b;n có thE khơng mong đ8i Xem xét viPc phịng ngUa sau đây: + Không nên đưa d1 liPu thUa v+i m/c đích sc d/ng + Chnc chnn sc d/ng xác thdc ngư7i dùng thích h8p v: mIt cơng nghP 3.2 T;o mBt Service vư8t qua ph;m vi domain ĐE cho phép Silverlight qu6n lý quy:n truy cAp vào service c4a domain khác, service ph6i tuỳ chWnh chW rõ ràng cross\domain đư8c phép truy cAp Bong viPc tuỳ chWnh, Silverlight control có thE truy cAp t+i service mBt cách thAt an tồn, mà khơng gây 6nh hư>ng xLu đ*n d1 liPu mà lưu tr1 b>i service Infoway Solutions CHƯƠNG VIII: GIAO TI P M NG TRONG SILVERLIGHT Silverlight hJ tr8 hai ch* khác cho service đE tuỳ chWnh quy:n truy cAp cross\ domain: - ĐIt tAp tin clientaccesspolicy.xml > gCc c4a domain nơi mà service đư8c lưu tr1 đE thi*t lAp quy:n truy cAp c4a cross\domain t+i service - ĐIt tAp tin crossdomain.xml h8p lP > gCc c4a domain nơi service đư8c lưu tr1 TAp tin ph6i đư8c đánh dLu public cho toàn domain Sc d/ng tAp tin clientaccesspolicy.xml đE cho phép truy cAp cross\domain T;o service cho phép máy khách Silverlight truy cAp T;o tAp tin clientaccesspolicy.xml, cho phép truy cAp vào service Thi*t lAp dư+i cho phép truy cAp tU bLt kỳ domain t+i nguVn tài nguyên c4a domain Lưu tAp tin clientaccesspolicy.xml t+i gCc c4a domain nơi service đư8c lưu tr1 Cho ví d/ này, n*u service đư8c lưu tr1 t;i http://fabrikam.com tAp tin ph6i đIt t;i http://fabrikam.com/clientaccesspolicy.xml Sc d/ng tAp tin crossdomain.xml đE cho phép truy cAp cross\domain T;o service cho phép Silverlight client truy cAp T;o tAp tin crossdomain.xml có nh1ng thi*t lAp dư+i TAp tin ph6i đư8c cLu hình đE cho phép truy cAp vào service tU bLt kỳ tên mi:n khác, hoIc khơng đư8c nhAn b>i Silverlight Infoway Solutions CHƯƠNG VIII: GIAO TI P M NG TRONG SILVERLIGHT Lưu tAp tin crossdomain.xml vào gCc c4a domain nơi mà service đư8c lưu tr1 máy ch4 Ví d/, n*u service đư8c lưu tr1 máy ch4 http://fabrikam.com tAp tin ph6i đư8c đIt t;i http://fabrikam.com/crossdomain.xml Làm vi Silverlight đE làm viPc v+i System.Net.Sockets Nh1ng l+p m+i bao gVm sau đây: + EndPoint \ xác đ.nh mBt đ.a chW m;ng Đây mBt l+p trUu tư8ng + DnsEndPoint \ đ;i diPn cho mBt m;ng lư+i endpoint mBt tên máy ch4 hoIc mBt chuJi ký td đ;i diPn c4a mBt đ.a chW IP mBt sC crng + Ipaddress \ Cung cLp đ.a chW giao th?c m;ng (IP) + IPEndPoint \ đ;i diPn cho mBt m;ng lư+i endpoint mBt đ.a chW IP mBt sC crng + SocketAddress – Lưu tr1 thông tin đư8c snp x*p k* thUa tU l+p EndPoint L+p Socket cung cLp mBt tAp h8p phương th?c cho giao ti*p m;ng L+p Socket cho phép b;n thdc thi bLt đVng bB viPc truy:n t6i d1 liPu sc d/ng bLt c? giao th?c giao Infoway Solutions CHƯƠNG VIII: GIAO TI P M NG TRONG SILVERLIGHT ti*p đư8c liPt kê > kiEu ProtocolType HiPn t;i, Silverlight chW hJ tr8 lo;i giao th?c TCP MBt nh1ng h;n ch* v: viPc sc d/ng sockets Silverlight crng ph6i ph;m vi 4502\4534 ChW nh1ng crng cho phép k*t nCi bong cách sc d/ng sockets ?ng d/ng Silverlight N*u mBt k*t nCi đ*n mBt crng không ph6i ph;m vi crng này, viPc k*t nCi sg khơng thành cơng 4.2 LAp trình m;ng b6n v+i Socket L+p Socket cho phép b;n thdc thi bLt đVng bB truy:n t6i d1 liPu sc d/ng nh1ng phương th?c sau đây: + ConnectAsync \ Bnt đXu Asynchronous request t+i máy ch4 + SendAsync \ Ghi d1 liPu tU mBt hay nhi:u buffers t+i Socket k*t nCi + ReceiveAsync \ ĐOc d1 liPu vào mBt hoIc nhi:u buffers tU Socket k*t nCi + Shutdown \ K*t thúc mOi thao tác gci ch7, tín hiPu > endpoint rong k*t nCi có thE b đóng l;i N*u viPc gci đư8c xác đ.nh, d1 liPu có thE v}n nhAn đư8c cho đ*n máy ch4 k*t thúc k*t nCi c4a (chW nhAn đư8c byte) + Close \ Là đóng k*t nCi máy ch4 lưu tr1 tLt c6 tài ngun qu6n lý khơng qu6n lý có liên quan t+i Socket Trong l+p Socket, ho;t đBng asynchronous c4a Socket đư8c mô t6 b>i kh6 dùng l;i System.Net.Sockets.SocketAsyncEventArgs phân br trì đCi tư8ng c4a ?ng d/ng Các ?ng d/ng có thE t;o SocketAsyncEventArgs c4a đCi tư8ng mà cXn Ví d/, n*u mBt ?ng d/ng Silverlight cXn ph6i có 10 Socket cho thao tác mBt lúc, có thE phân br 10 SocketAsyncEventArgs cho đCi tư8ng trư7ng h8p Vòng đ7i c4a SocketAsyncEventArgs đư8c sc d/ng asynchronous Socket đBng đư8c xác đ.nh b>i sd tham chi*u t+i mã c4a ?ng d/ng tham chi*u t+i asynchronous I / O Nó khơng cXn thi*t cho ?ng d/ng đE trì mBt tham chi*u cho đCi tư8ng SocketAsyncEventArgs sau đư8c gci mBt tham sC vào mBt nh1ng phương pháp asynchronous Socket Nó sg v}n đư8c tham chi*u cho đ*n đư8c tr6 v: hồn tLt Tuy nhiên, l8i th* cho ?ng d/ng đE gi1 l;i tham chi*u đ*n đCi tư8ng SocketAsyncEventArgs đE có thE đư8c tái sc d/ng cho asynchronous socket ti*p theo ho;t đBng Mã hóa dB li

Ngày đăng: 08/01/2022, 17:29

HÌNH ẢNH LIÊN QUAN

Các công nghệ plug-in trên web trước đây không cho phép bạn truyền tải những dữ liệu hình ảnh chất lượng cao như 720p HDTV, Trong khi chất lượng đường truyền mạng ngày nay đang ngày càng tốt hơn  và nhu cầu được xem những video chất lượng cao cũng tăng lê - Giáo trình Giảng dạy silverlight 2
c công nghệ plug-in trên web trước đây không cho phép bạn truyền tải những dữ liệu hình ảnh chất lượng cao như 720p HDTV, Trong khi chất lượng đường truyền mạng ngày nay đang ngày càng tốt hơn và nhu cầu được xem những video chất lượng cao cũng tăng lê (Trang 6)
4 Ki5n trúc t7ng th8 và các mô hình l;p trình c2a Silverlight - Giáo trình Giảng dạy silverlight 2
4 Ki5n trúc t7ng th8 và các mô hình l;p trình c2a Silverlight (Trang 8)
Dưới đây là hình ảnh mô tả những thành phần trong kiến trúc của Silverlight cùng với các thành phần và dịch vụ liên quan khác - Giáo trình Giảng dạy silverlight 2
i đây là hình ảnh mô tả những thành phần trong kiến trúc của Silverlight cùng với các thành phần và dịch vụ liên quan khác (Trang 8)
= phiên b@n Silverlight 1.0 cung cCp cho b"n duy nhCt mEt mô hình l;p trình là Javascript API, cho đ5n phiên b@n Silverlight 2.0 đã cung cCp c@ hai mô hình l;p trình là Managed API và  Javascript API - Giáo trình Giảng dạy silverlight 2
phi ên b@n Silverlight 1.0 cung cCp cho b"n duy nhCt mEt mô hình l;p trình là Javascript API, cho đ5n phiên b@n Silverlight 2.0 đã cung cCp c@ hai mô hình l;p trình là Managed API và Javascript API (Trang 9)
4.2 Các mô hình l;p trình c2a silverlight - Giáo trình Giảng dạy silverlight 2
4.2 Các mô hình l;p trình c2a silverlight (Trang 9)
Javascript API không cung cCp mEt mô hình _ng dTng có kh@ năng hh trU các _ng dTng t7 hUp vRi si điau hưRng bên trong - Giáo trình Giảng dạy silverlight 2
avascript API không cung cCp mEt mô hình _ng dTng có kh@ năng hh trU các _ng dTng t7 hUp vRi si điau hưRng bên trong (Trang 10)
v Chúng ta là m2 phương pháp một là viết code C# trong code ứng dụng, hai là viết trực tiếp trong XAML  - Giáo trình Giảng dạy silverlight 2
v Chúng ta là m2 phương pháp một là viết code C# trong code ứng dụng, hai là viết trực tiếp trong XAML (Trang 14)
Toàn bộ màn hình ứng dụng đầu tiên của bạn được nhìn thấy như sau - Giáo trình Giảng dạy silverlight 2
o àn bộ màn hình ứng dụng đầu tiên của bạn được nhìn thấy như sau (Trang 14)
v Bấm F5 để chạy ứng dụng. Cả hai phương thức viết trên đều cho ra một kết quả như hình vẽ sau sau  - Giáo trình Giảng dạy silverlight 2
v Bấm F5 để chạy ứng dụng. Cả hai phương thức viết trên đều cho ra một kết quả như hình vẽ sau sau (Trang 15)
v Gán sự kiện xử lý khi click - Giáo trình Giảng dạy silverlight 2
v Gán sự kiện xử lý khi click (Trang 15)
Dưới đây là hình ảnh danh sách các công cụ đã có trong Silverlight tool - Giáo trình Giảng dạy silverlight 2
i đây là hình ảnh danh sách các công cụ đã có trong Silverlight tool (Trang 36)
Image hiển thị hình ảnh trong định dạng JPEG hoặc PNG. - Giáo trình Giảng dạy silverlight 2
mage hiển thị hình ảnh trong định dạng JPEG hoặc PNG (Trang 41)
Hình ảnh hiển thị ở 1 ,4 hoặ c8 bit màu, hình ảnh thực với 24 hoặc 32 bit - Giáo trình Giảng dạy silverlight 2
nh ảnh hiển thị ở 1 ,4 hoặ c8 bit màu, hình ảnh thực với 24 hoặc 32 bit (Trang 42)
MultiScaleImage cho phép người dùng mở một hình ảnh cho phép phóng to thu nhỏ thông qua công nghệ Deep Zoom - Giáo trình Giảng dạy silverlight 2
ulti ScaleImage cho phép người dùng mở một hình ảnh cho phép phóng to thu nhỏ thông qua công nghệ Deep Zoom (Trang 44)
Ngoài ra DataGrid còn cung cấp một số kiểu mẫu mà bạn có thể thay đổi hình thức thể hiện dữ liệu hàng, cột và tiêu đề - Giáo trình Giảng dạy silverlight 2
go ài ra DataGrid còn cung cấp một số kiểu mẫu mà bạn có thể thay đổi hình thức thể hiện dữ liệu hàng, cột và tiêu đề (Trang 51)
DataGrid hỗ trợ các bảng tùy chọn định dạng và khả năng hiển thị hoặc ẩn các tiêu đề, các thanh trượt di chuyển  - Giáo trình Giảng dạy silverlight 2
ata Grid hỗ trợ các bảng tùy chọn định dạng và khả năng hiển thị hoặc ẩn các tiêu đề, các thanh trượt di chuyển (Trang 51)
1. Trong Project Silverlight đã có chúng ta làm thao tác tạo New Item theo hình vẽ dưới đây - Giáo trình Giảng dạy silverlight 2
1. Trong Project Silverlight đã có chúng ta làm thao tác tạo New Item theo hình vẽ dưới đây (Trang 54)
1. Trong Project Silverlight đã có chúng ta làm thao tác tạo New Item theo hình vẽ dưới đây - Giáo trình Giảng dạy silverlight 2
1. Trong Project Silverlight đã có chúng ta làm thao tác tạo New Item theo hình vẽ dưới đây (Trang 54)
XỬ LÝ ĐỒ HỌA TRÊN SILVERLIGHT - Giáo trình Giảng dạy silverlight 2
XỬ LÝ ĐỒ HỌA TRÊN SILVERLIGHT (Trang 58)
hình(Shape) mà b(n có th, dùng ngay đư:c như Ellipse, Line, Path, Polygon, Polyline, và - Giáo trình Giảng dạy silverlight 2
h ình(Shape) mà b(n có th, dùng ngay đư:c như Ellipse, Line, Path, Polygon, Polyline, và (Trang 58)
LKp Path cho phép b(n v/ nh5ng hình cong và nh5ng d(ng hình ph#c t(p. Nh5ng hình - Giáo trình Giảng dạy silverlight 2
p Path cho phép b(n v/ nh5ng hình cong và nh5ng d(ng hình ph#c t(p. Nh5ng hình (Trang 59)
MIt hình ch5 nhHt(Rectangle) đư:c xác đ"nh b<i hai đ?c tính rIng(Width) và - Giáo trình Giảng dạy silverlight 2
t hình ch5 nhHt(Rectangle) đư:c xác đ"nh b<i hai đ?c tính rIng(Width) và (Trang 60)
Cung cp lKp cơ s< cho nh5ng đNi tư:ng đ, xác đ"nh d(ng hình hc cho đNi tư:ng. ĐNi tư:ng Geometry có th, s - Giáo trình Giảng dạy silverlight 2
ung cp lKp cơ s< cho nh5ng đNi tư:ng đ, xác đ"nh d(ng hình hc cho đNi tư:ng. ĐNi tư:ng Geometry có th, s (Trang 61)
Miêu t> mIt han h:p hình d(ng, đư:c t(o thành tA nh iu đNi tư:ng Geometry khác. S. d%ng FillRule cho GeometryGroup là r t h:p lý b<i  s  k@t h:p các  hình d(ng có th, có kh> năng k@t h:p các đo(n nơi mà s  áp d%ng c&a quy luHt  fill có tác d% - Giáo trình Giảng dạy silverlight 2
i êu t> mIt han h:p hình d(ng, đư:c t(o thành tA nh iu đNi tư:ng Geometry khác. S. d%ng FillRule cho GeometryGroup là r t h:p lý b<i s k@t h:p các hình d(ng có th, có kh> năng k@t h:p các đo(n nơi mà s áp d%ng c&a quy luHt fill có tác d% (Trang 62)
o Tìm hiểu về LINQ to SQL - Giáo trình Giảng dạy silverlight 2
o Tìm hiểu về LINQ to SQL (Trang 84)
Bấm OK chúng ta sẽ có một Solution như hình vẽ dưới đây - Giáo trình Giảng dạy silverlight 2
m OK chúng ta sẽ có một Solution như hình vẽ dưới đây (Trang 84)
# Nhiều khả năng sẽ bạn sẽ nhận được cảnh báo như hình vẽ dưới đây, bạn bấm vào Yes để tiếp tục  - Giáo trình Giảng dạy silverlight 2
hi ều khả năng sẽ bạn sẽ nhận được cảnh báo như hình vẽ dưới đây, bạn bấm vào Yes để tiếp tục (Trang 85)
# Kết quả nhận được từ việc tạo trên là 3 file theo hình vẽ dưới đây - Giáo trình Giảng dạy silverlight 2
t quả nhận được từ việc tạo trên là 3 file theo hình vẽ dưới đây (Trang 88)
# Bên màn hình Designer sẽ thấy như hình ảnh sau - Giáo trình Giảng dạy silverlight 2
n màn hình Designer sẽ thấy như hình ảnh sau (Trang 90)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w