سیستم مدیریت محتوای IRIS از سیستمهای اعتبار سنجی و مدیریت کاربران رایج نظیر ASP.NET Membership و یا ASP.NET Simple Membership استفاده نمیکند و از یک سیستم احراز هویت سفارشی شده مبتنی بر FormsAuthentication بهره میبرد. زمانیکه در حال نوشتن پروژهی IRIS بودم هنوز ASP.NET Identity معرفی نشده بود و به دلیل مشکلاتی که سیستمهای قدیمی ذکر شده داشت، یک سیستم اعتبار سنجی کاربران سفارشی شده را در پروژه پیاده سازی کردم. برای اینکه با مع ...
اگر از آن دسته افرادی هستید که با پکیجهای مختلف و پروژههای مختلف تحت کلاینت سر و کار دارید و همچنین اطلاعات چندانی نسبت به NodeJs ندارید (مثل خود من)، حتما به پروژههایی در Github برخوردید که نیازمند نصب وابستگیها از خط فرمان bower و یا npm هستند. بعد از مطالعهی مطلب آشنایی با bower این نیاز ایجاد شد تا در پروژههایی که قرار است درون Visual Studio اجرا شوند، وابستگیهای bower چگونه میتوانند مدیریت شوند. خوشبختانه Microsoft این امک ...
برای مطالعهی این مقاله شما باید به مواردی از قبیل کتابخانهی AngularJs ، تعاملات بین کلاینت و سرور و همچنین معماری RESTful تسلط کافی داشته باشید و ما از توضیح و تفصیلی این سرفصلها اجتناب میکنیم. خیلی خوب بپردازیم به اصل مطلب: Restangular چیست؟ کتابخانه RestAngular بنا به گفته ناشر در مستندات Github آن، یک سرویس توسعه داده شده AngularJs میباشد که کدهای نوشته شدهی برای پیاده سازی فرآیندهای Request/Response کلاینت و سرور ...
سیشارپ نیز مانند بسیاری از زبانهای شیءگرای دیگر، امکان فیلتر کردن استثناءها را بر اساس نوع آنها، دارا است. برای مثال: try
{
// some code to check ...
}
catch (InvalidOperationException ex)
{
// do your handling for invalid operation ...
}
catch (IOException ex)
{
// do your handling for IO error ...
}
در اینجا میتوان بر اساس نوع استثنای مدنظر، چندین catch را نوشت و مدیریت کرد. اما گاهی از اوق ...
چند روز پیش در حال استفاده از افزونهی jQuery Bootgrid بودم که دادههای خود را در قالب زیر به صورت کوئری استرینگ ارسال میکند. current=1&rowCount=10&sort[sender]=asc&searchPhrase=&id=b0df282a-0d67-40e5-8558-c9e93b7befed قبلا هم با کوئری استرینگها کار کردهایم و نحوه دریافت آن را یاد گرفتهایم و میدانیم که اگر کلاس شما شامل پراپرتیهای همنام با کلیدهای کوئری استرینگ باشد مستقیما در کلاس شما جا میگیرند؛ ولی ...
برنامه نویسهای سیشارپ پیشتر با null-coalescing operator یا ?? آشنا شده بودند. برای مثال string data = null;
var result = data ?? "value";
در این حالت اگر data یا سمت چپ عملگر، نال باشد، مقدار value (سمت راست عملگر) بازگشت داده خواهد شد؛ که در حقیقت خلاصه شدهی چند سطر ذیل است: if (data == null)
{
data = "value";
}
var result = data;
در سی شارپ 6، جهت تکمیل عملگرهای کار با مقادیر نال و بالا بردن producti ...
یکی دیگر از قابلیتهای جذاب نسخهی جدید سیشارپ، عملگر nameof است. هدف اصلی آن ارائه کدهایی با قابلیت Refactoring بهتر است؛ زیرا به جای نوشتن نام فیلدها و یا متدها در صورت نیاز به صورت hard-coded، میتوانیم از این عملگر استفاده کنیم. به عنوان مثال در زمان صدور استثناءیی از نوع ArgumentNullException باید نام آرگومان را به سازندهی این کلاس پاس دهیم. متاسفانه یکی از مشکلاتی که با رشتهها در حالت کلی وجود دارد این است که امکان دیباگ در زمان ...
تا پیش از C# 6 یکی از روشهای توصیه شدهی جهت اتصال رشتهها به هم، استفاده از متدهایی مانند string.Format و StringBuilder.AppendFormat بود: using System;
namespace CS6NewFeatures
{
class Person
{
public string FirstName { set; get; }
public string LastName { set; get; }
public int Age { set; get; }
}
class Program
{
static void Main(string[] args)
...
در بخش پیشین چند مورد از قابلیتهای angular-translate را بررسی نمودیم. در این بخش به بررسی باقی موارد میپردازیم. ex7_load_static_files در این مثال خواهیم دید که چگونه یک فایل translate table در موقع فراخوانی به صورت On Demand بارگذاری خواهد شد. در قدم اول اسکریپتهای زیر به صفحه افزوده میشوند. <script src="Scripts/angular.js"></script>
<script src="Scripts/angular-cookies.js" ...