در قسمت قبلی با نحوه انتشار برنامهها آشنا شدیم. در این قسمت نحوه پیکربندی یا تغییر پیکربندی برنامه را مشخص میکنیم.
کاربر یا مدیر سیستم بهتر از هر کسی میتواند جنبههایهای مختلف اجرای
برنامه را مشخص کند. به عنوان نمونه ممکن است مدیر سیستم بخواهد
فایلهای یک برنامه را سمت هارد دیسک سیستم کاربر انتقال دهد یا اطلاعات
مانیفست یک اسمبلی را رونویسی کند و مباحث نسخه بندی که در آینده در مورد
آن صحبت میک ...
روش سوم:
DTO (Data transfer objects) در قسمتهای قبلی دو روش از روشهای موجود جهت تبادل دادهها بین لایهها، ذکر گردید
و علاوه بر این، مزایا و معایب هر کدام از آنها نیز ذکر شد. در این قسمت دو روش
دیگر، به همراه مزایا و معایب آنها برشمرده میشود. لازم به ذکر است هر کدام از
این روشها میتواند با توجه به شرایط موجود و نظر طراح نرم افزار، دارای تغییراتی
جهت رسیدن به یکسری اهداف و فاکتورها در نرم ...
در فصل دوم کتاب تا به الان یاد گرفتیم چگونه ماژولها را کامپایل کنیم و چگونه آنها را در یک اسمبلی قرار دهیم. حال وقت آن فرا رسیده است که با بسته بندی کردن (Package) و انتشار آن (Deploy) به طوری که کاربران بتوانند برنامه را اجرا کنند آشنا شویم.
نصب برنامه از طریق فروشگاه ویندوز
در فروشگاه ویندوز Windows Store Apps قوانین سخت و شدیدی برای بسته بندی کردن اسمبلیها وجود دارد. ویژوال استود ...
پس از تلاشهای اولیه برای راه اندازی که نیاز به گوگل کردن موارد مختلف دارد از جمله راه اندازی ssl و certification در لوکال هاست و تنظیم IIS برای استفاده از آن، میتوان به راه اندازی اولیه آیدنتیتی سرور رسید . پیش فرض این آموزش این نسخه از آی دنتیتی سرور است : https://github.com/IdentityServer/IdentityServer2 نگاهی اجمالی به سورس: IdentityServer2 Sampel---- AdfsIntegrationFullSample -------- AdfsIntegrationS ...
در قسمت قبلی با نحوهی نسخه بندی اسمبلیها آشنا شدیم؛ ولی به غیر از نسخه
بندی، فرهنگ (culture) هم قسمتی از عوامل شناسایی یک اسمبلی است. به عنوان
نمونه من میتوانم یک اسمبلی داشته باشم که برای زبان آلمانی، انگلیسی
آمریکایی، انگلیسی بریتانیایی و ... آماده شده است. شناسایی فرهنگ یک اسمبلی از طریق یک رشته است که شامل یک تگ اصلی و ثانویه طبق استاندارد RFC1766 میباشد. جدول زیر تعدادی از این تگها را نمایش میدهد. ...
قرار دادن تمامی تنظیمات نگاشتها درون کلاسهای پروفایل تا حدودی حجم کدهای ما را در آینده زیاد خواهد کرد. public class TestProfile1 : Profile
{
protected override void Configure()
{
// این تنظیم سراسری هست و به تمام خواص زمانی اعمال میشود
this.CreateMap<DateTime, string>().ConvertUsing(new DateTimeToPersianDateTimeConverter());
this.CreateMap<User, UserViewModel>();
// ...
در مقاله قبلی در مورد افزودن منابع به اسمبلی صحبتهایی کردم که قسمتی از این منابع مربوط به اطلاعات نسخه بندی بود. در این مقاله قصد داریم این مسئله را بازتر کرده و در مورد نحوهی نسخه بندی بیشتر صحبت کنیم.
در مقالهی قبلی وقتی نسخهی یک اسمبلی را مشخص میکردیم، از 4 عدد که با نقطه از هم جدا شده بودند، استفاه کردیم که در جدول زیر این 4 نامگذاری را مشاهده میکنید: شماره بازبینی Revision Number ...
در مقاله قبلی بحث Assembly Linker را باز کردیم و یاد گرفتیم که چگونه میتوان با استفاده از آن ماژولهای مختلف را به یک اسمبلی اضافه کرد. در این قسمت از این سلسله مقالات قصد داریم فایلهای منابع (Resource) مانند مواد چندرسانهای، چند زبانه و .. را به آن اضافه کنیم. یک اسمبلی حتی میتواند تنها Resource باشد.
...
در قسمت قبلی نحوهی ساخت اسمبلی را یاد گرفتیم. ولی ممکن است که بخواهید اسمبلی را از طریق Assembly Linker یا AL.exe ایجاد کنید. این روش موقعی سودمند است که بخواهید یک اسمبلی از ماژولها از کامپایلرهای مختلف را ایجاد کنید یا اینکه کامپایلر شما مانند کامپایلر سی شارپ از دستور یا سوئیچی مشابه addmodule استفاده نمیکند. یا حتی اینکه در زمان کامپایل هنوز اطلاعاتی از نیازمندیهای اسمبلیها ندارید و به بعد موکول میکنید. از AL همچنین میتوانید ...
در ادامه قسمت قبلی روشهای زیادی جهت اضافه شدن یک ماژول به یک اسمبلی وجود دارند. اگر شما از کامپایلر سیشارپ برای ساخت یک فایل PE با جدول مانیفست استفاده میکنید، میتوانید از سوئیچ AddModule/ استفاده کنید. برای اینکه بدانیم چگونه میتوان یک اسمبلی چند فایله ساخت بیاید فرض کنیم که دو فایل سورس کد با مشخصات زیر داریم: RUT.cs: این سورس شامل کدهایی است که به ندرت در برنامه استفاده میشود. FUT.cs: این سورس شامل کدهایی است که ...