asp:Silverlight
वेब सर्वर नियंत्रण पर आधारित कोड क्या है, लेकिन उस नियंत्रण को सिल्वरलाइट 3 से बंद कर दिया गया था।
अब हम वस्तु ऑब्जेक्ट टैग की प्राथमिकता प्रस्तुत करने के लिए सीधे ऑब्जेक्ट टैग का उपयोग करते हैं या अपने सर्वर नियंत्रण को दस्तक देते हैं।
एक वस्तु टैग के रूप में यह कुछ इस तरह दिखेगा: -
<form id="form1" runat="server" style="height:100%">
<div id="silverlightControlHost">
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
<param id="xapSource" runat="server" name="source" value="ClientBin/SilverlightApplication1.xap"/>
<param name="onError" value="onSilverlightError" />
<param name="background" value="white" />
<param name="minRuntimeVersion" value="4.0.50303.0" />
<param name="autoUpgrade" value="true" />
<param name="initParams" id="initParams" runat="server" />
<a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50303.0" style="text-decoration:none">
<img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
</a>
</object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>
</form>
नोट आईडी और runat = स्रोत परम पर "सर्वर"। इसी के साथ जगह में पेज लोड कुछ इस तरह दिखाई दे सकता है: -
protected void Page_Load(object sender, EventArgs e)
{
string xapPhysicalPath = Server.MapPath(xapSource.Attributes["value"]);
DateTime lastWrite = System.IO.File.GetLastWriteTime(xapPhysicalPath);
xapSource.Attributes["value"] = xapSource.Attributes["value"] + "?" + lastWrite.ToString("yyyyMMddThh:mm:ss");
}
इस स्रोत हमेशा बदल जाएगा जब XAP बदल गया है के लिए इस्तेमाल किया यूआरएल सुनिश्चित करेगी। आपके द्वारा पारित किया गया मूल कोड इस बात से त्रुटिपूर्ण है कि xap के लिए पूरी तरह से असंबद्ध असेंबली संस्करण संख्या के बिना बदलना अभी भी संभव है।
मैं codebehind में "param" ("xapSource" आपके उदाहरण में) तक नहीं पहुंच सकता, इंटेलिजेंस इसे बिल्कुल नहीं देखता है। क्या मुझसे कुछ गलत हो रही है? Design.cs फ़ाइल में ऐसा दिखने वाला क्या है? इसका सटीक प्रकार क्या है? –
ठीक है, मुझे यह काम करने के लिए मिला। परम प्रोग्रामिक रूप से नहीं पहुंचा जा सकता है, इस समाधान का उपयोग करना आवश्यक है: http://geekswithblogs.net/mbcrump/archive/2011/01/06/prevent-your-silverlight-xap-file-from-caching-in-your -browser.aspx –
हाँ आप कुछ गलत कर रहे हैं। यह 'संरक्षित वैश्विक :: सिस्टम.Web.UI.HtmlControls.HtmlGenericControl xapSource;' जैसा दिखना चाहिए। सटीक प्रकार 'System.Web.UI.HtmlControls.HtmlGenericControl' है। – AnthonyWJones