خواندن فایل RESX در #C

در این پست نشان خواهیم داد که چگونه یک فایل RESX را در برنامه خود و با استفاده از #C بخوانیم.

خواندن فایل RESX در #C

فایل های RESX

یکی از مزایای فایل resx این است که هنگامی که با یک برنامه ویرایشگر متن (مانند word یا notepad) باز می شود، آن را می توان ویرایش و تجزیه کرد. هنگامی که این اطلاعات بخشی از منابع است، در زمان مشاهده یک فایل resx، شما در واقع می توانید شکل باینری از یک شی جاسازی شده (مثلا یک تصویر ) را ببینید. جدای از این، یک فایل resx به طور کامل قابل خواندن و قابل نگهداری است. به زبان ساده می توان گفت که یک فایل RESX شبیه یک DataBase است که در کنار فایل ما می باشد و در برنامه های ویرایشگر نیز قابل تغییر می باشند.

از فایل RESX می توان برای دوزبانه کردن وبسایت استفاده کرد.

استفاده از کد

برای شروع، نیاز دارید که یک web application ایجاد کنید. بعداز ایجاد برنامه، روی آن راست کلیک کرده و گزینه Add New Item را انتخاب کنید.

سپس از پنجره باز شده گزینه Resource File را انتخاب کنید.

اکنون می توانید در قسمت Solution Explorer یک فایل جدید به نام Resource1.resx خواهید داشت.

فایل RESX آماده است. اکنون می توانیم درون این فایل مقدار (value) قرار دهیم. به عنوان نمونه می توانید در تصویر زیر داده های قرار داده شده در آن را ببینید.

یک صفحه web به برنامه اضافه کنید. به صفحه code behind بروید. در این مرحله باید، فضای نام های لازم را در برنامه اضافه کنید.

 

using System.Reflection;  
using System.Resources;  
using System.Globalization;

کد زیر را در قسمت page load وارد کنید.

protected void Page_Load(object sender, EventArgs e)
        {

            Page.Title = "مرجع تخصصی برنامه نویسان";
            ResourceManager rm = new ResourceManager("UsingRESX.Resource1",
                Assembly.GetExecutingAssembly());
            String strWebsite = rm.GetString("Website",CultureInfo.CurrentCulture);
            String strName = rm.GetString("Name");
            form1.InnerText = "وبسایت: " + strWebsite + "---- نام: " + strName;
        }

در قطعه کد بالا، مقدارهای Name  و Website را که در فایل RESX تنظیم کرده ایم، بدست می آوریم.

ResourceManager rm = new ResourceManager("UsingRESX.Resource1",  
Assembly.GetExecutingAssembly());  

در قطعه کد بالا، فایل Resource خود را در کلاس ResourceManager قرار دادیم. لطفا توجه داشته باشید که در اینجا، UsingRESX نام پروژه، و Resource1 نام فایل resource می باشد. تابع GetString برای خواندن خصوصیات فایل resource می باشد.

خروجی:

 

 

فایل های ضمیمه