PDA

View Full Version : سوال: ایجاد وب سایت با استفاده از silver light



*parsa
شنبه 15 آبان 1389, 19:39 عصر
سلام دوستان سوال من اینه که با سیلور لایت به همراه یک زبان مثل سی شارپ میتونیم یه وب سایت ایجاد کنیم که با پایگاه داده ارتباط برقرار کنه یا اینکه باید از asp.net نیز استفاده کنیم

taghvajou
شنبه 15 آبان 1389, 20:31 عصر
سلام به همه
در واقع شما از ASP.Net (یا حتی PHP) استفاده می کنین فقط به عنوان کانتینر کنترل سیلورلایت!
ما بقی کارها مربوط میشه به خود سیلورلایت.

محمد متاله
شنبه 06 آذر 1389, 20:12 عصر
سلام خدمت دوست گرامی
یک پروژه با سیلور لایت ایجاد کنید
مانند شکل زیر


http://s16.aks98.com/download.php?file=79489285906875715475.jpg


می بینید که پروژه سیلور شما حاوی پروژه SilverlightApplication1 که می باشد که فایل های زمل اصلی مربوط به برنامه سیلورلایت شما می باشد
و اما به طور پیش فرض ویژوال استودیو 2 فایل را در قالب یک پروژه سایت برایتان ایجاد می کند به نام های :
SilverlightApplication1TestPage.aspx و SilverlightApplication1TestPage.html که وظیفه این دو فایل میزبانی برنامه سیلور شما می باشند

نگاهی به فایل با پسوند aspx می اندازیم



<

body>


<formid="form1"runat="server"style="height:100%">



<divid="silverlightControlHost">



<objectdata="data:application/x-silverlight-2,"type="application/x-silverlight-2"width="100%"height="100%">



<paramname="source"value="ClientBin/SilverlightApplication1.xap"/>



<paramname="onError"value="onSilverlightError"/>



<paramname="background"value="white"/>



<paramname="minRuntimeVersion"value="4.0.50401.0"/>



<paramname="autoUpgrade"value="true"/>



<ahref="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50401.0"style="text-decoration:none">



<imgsrc="http://go.microsoft.com/fwlink/?LinkId=161376"alt="Get Microsoft Silverlight"style="border-style:none"/>



</a>



</object><iframeid="_sl_historyFrame"style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>



</form>



</



body>

محمد متاله
شنبه 06 آذر 1389, 20:18 عصر
و نگاهی هم به فایل html می اندازیم:






<



body>


<formid="form1"runat="server"style="height:100%">



<divid="silverlightControlHost">



<objectdata="data:application/x-silverlight-2,"type="application/x-silverlight-2"width="100%"height="100%">



<paramname="source"value="ClientBin/SilverlightApplication1.xap"/>



<paramname="onError"value="onSilverlightError"/>



<paramname="background"value="white"/>



<paramname="minRuntimeVersion"value="4.0.50401.0"/>



<paramname="autoUpgrade"value="true"/>



<ahref="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50401.0"style="text-decoration:none">



<imgsrc="http://go.microsoft.com/fwlink/?LinkId=161376"alt="Get Microsoft Silverlight"style="border-style:none"/>



</a>



</object><iframeid="_sl_historyFrame"style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>



</form>



</



body>



می بینید که این کدها هیچ تفاوتی با هم ندارند وظیفه این کدها همان طور که می دانید برای نمایش برنامه سیلورلایت شما می باشندمی توانید hieght و width آن را تغییر دهید تا ناحیه ای که برنامه سیلور را نمایش می دهد نیز تغییر کند در حقیقت شما یرای ساخت یک برنامه تحت اینرنت به راحتی می توانید از سیلورلایت استفاده کنید برون اینکه از ASP.NET استفاده کنید!!!!!!!!!!!!!


یعنی تمام فکر و ذکرتان را صرف گرافیک و ارتباط برنامه سیلورلایت با sql server با تکنیک wcf خواهید کرد ور در نهایت می توانید یکی از فایل های aspx. و یا html. را حذف کنید چون برای نمایش برنامه تان فقط به یکی نیاز دارید


کدهای اصلی برنامه سیلورتان که به کامپیوتر کلاینت ارسال می شود در پوشه ClientBin و در فایل SilverlightApplication1.xap می باشد در این فایل برنامه C#‎‎ و یا VB تان به صورت یک فایل dll. و همچنین کدهای xaml می باشد(می گویید از کجا فهمیدی؟ باشه در ادامه حرفم را به شما ثابت خواهم کرد) که در کامپیوتر کلاینت بارگزاری می شود و پلاگین Silverlight که در کامپوتر کاربر نصب می باشد وظیفه اجرای این کدها را بر عهده دارد چون این پلاگین یک نسخه کوچکی از NET. را به همراه خود دارد


مشکلی که وجود دارد این است که این کدهای C#‎‎ در سمت کلاینت بارگزاری و اجرا!!!! می شوند اما SQL شما در سمت سرور می باشد بنابراین نمی توانید مانند ASP به راحتی از دیتابیس Query بگیرید و باید از WCF استفاده بفرمایید


به دلیل اینکه کدهای C#‎‎ هستند که دارند اجرا می شوند و اینکه در سیلورلایت نیز می توانید با پایگاه داده ارتباط برقرار کنید گفتم که دیگر نیازی به asp ندارید و فقط یک فایل html هم می تواند وظیفه میزبانی برنامه سیلور شما را بر عهده بگیرد به همین سادگی


یکی از مزایای سیلور لایت نسبت به Adobe Flash این است که داده های برنامه تان مانند عکس فیلم و ... نیازی در فایل xap قرار نمی گیرند اما در فلش کل داده ها در فایل swf قرار می گیرند و اگر سایتی نیاز به آپدیت داشت می بایست دوباره با برنامه فلش فایل swf را به عنوان خروجی جدید دریافت و آپلود می کردند اما در سیلور چنین مشکلی وجو ندارد و به همین دلیل نیز فایل های xap نسبت به swf حجم بسیار کمتری داردن حتی در برنامه سیلور لایت نیازی نیست که فایل عکس و یا فیلمتان در کنار پروژه تان باشد و می تواند در دیگر سایت ها باشد و شما ارجاعی به آنها بدهید یک دیگر از مزی های سیلور نسبت به فلش که دلم نیامد بپویم این است که موتورهای جستجو نمی توانند در فایل های swf عملیات جستجو را انجام دهند ولی در فایل xaml موجود در فایل xap این کار را می کنند و می توانند این سایت ها را ایندکس کنند.


حال نوبت به اثبات حرفم رسید که چرا گفتم در فایل xap موجود در CientBin فایل های dll. و XAML وجودد دارد


ابتدا حداقل یک بار برنامه تان را اجرا کنید سپس به پوشه ای که پروژه تان در آن قرار دارد بروید و سپس وارد پوشه ClientBin شوید فایل SilverlightApplication1.xap را مشاهده خواهید کرد پسوند zip. را به آن اضافه کنید تا نام آن به شکل SilverlightApplication1.xap.zip شود آن را با WinRAR باز کنید درون آن چه خواهید دید درست است فایل های dll. و XAML. که به سمت کلاینت ارسال خواهد شد

ma3566
یک شنبه 07 آذر 1389, 19:43 عصر
سلام
من دارم یک سایت با silver light طراحی میکنم.ولی در اجرا صفحه scrollنمی خوره. scrollbar هم گذاشتم مشکل حل نشد.کسی میدونه باید چیکار کرد؟

mo.esmp
دوشنبه 08 آذر 1389, 02:54 صبح
از کنترل ScrollViewer استفاده کنید.

<ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto" Height="AddHieght" Width="AddWidth" BorderBrush="{x:Null}" >
<!--Other controls goes here-->
</ScrollViewer>