كيفية استخدام الموارد في الصورة asp.net موقع على شبكة الإنترنت ؟
-
05-07-2019 - |
سؤال
لدي c# الموقع الذي يجعل من استخدام الكثير من الصور مع جزءا لا يتجزأ من النص الانكليزي.
كيف يمكنني استخدام معيار الموارد ملف مبادلة الصور اعتمادا على اللغة ؟
لدي ملف resx في App_GlobalResources الدليل, ولكن أنا لا يمكن أن يبدو للحصول على الوتر إلى asp:التحكم في الصورة من أجل imageurl بشكل صحيح.
أفكار ؟
تحديث:
للحصول على مزيد من المعلومات هنا هو صورة الوسم code:
<asp:image runat="server" ID="img2" ImageUrl="<%$Resources: Resource, cs_logo %>" />
النتيجة على جانب العميل هو:
<img id="img2" src="System.Drawing.Bitmap" style="border-width:0px;" />
علما أن المصدر هو واضح ليس ما كنت أتوقع...
المحلول
يمكنك تخزين عنوان الصورة في ملف الموارد واستخدام التالية مضمنة رمز في التحكم
<asp:Image ImageUrl="<%$resources:Image1 %>" />
التحديث
هذا الرابط يمكن أن تكون مفيدة على ما كنت تحاول إنجاز
أو
يمكنك أيضا محاولة تخزين المورد سلسلة وتعيين القيمة إلى عنوان الموقع بدلا من تخزين الصورة في resouce الملف.
نصائح أخرى
الشيء الوحيد الذي يمكن القيام به هو محاولة لخلق بسيطة "صورة الخدمة" التي يمكن أن تخدم ما يصل صورة في شكل مناسب من الموارد المضمنة.
ليس لديك لإنشاء خدمة الإنترنت نفسها ، يمكنك ببساطة إنشاء صفحة aspx وفي مدونة وراء تغيير الرد.ContentType أن "image/png" أو أيا كان الشكل الذي تفضله.هذا يتطلب أيضا الحصول على المعلمة في عنوان الصفحة نفسها ، ولكن هذا يمكن تصفيتها بسهولة.حتى Page_Load طريقة خدمة الصور قد تبدو شيئا مثل هذا:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim FinalBitmap As Bitmap
Dim strRenderSource As String
Dim msStream As New MemoryStream()
strRenderSource = Request.Params("ImageName").ToString()
' Write your code here that gets the image from the app resources.
FinalBitmap = New Bitmap(Me.Resources(strRenderSource))
FinalBitmap.Save(msStream, ImageFormat.Png)
Response.Clear()
Response.ContentType = "image/png"
msStream.WriteTo(Response.OutputStream)
If Not IsNothing(FinalBitmap) Then FinalBitmap.Dispose()
End Sub
ثم على صفحة ASPX لديك...
<asp:Image ImageUrl="http://localhost/GetImage.aspx?ImageName=Image1" />
لا تنسى أن نظام الاستيراد.الرسم و النظام.الرسم.التصوير في الصفحة.
إذا كنت تستخدم الموارد العالمية الملف تحتاج إلى إضافة مثل هذا
<img id="WelocmeICon" runat="server" alt="welcome icon"
src="<%$resources:NmcResource,WelcomeIcon %>" />
و لأنني استخدام img التحكم أضفت runatserver و معرف عن ذلك