نظرات مطالب
ارتقاء به ASP.NET Core 1.0 - قسمت 2 - بررسی ساختار جدید Solution
- برای کار با NET Core 2.0. و تمام نگارش‌های جدید آن حتما باید آخرین نگارش VS 2017 را نصب کنید. نگارش اولیه آن MSBuild مناسبی را به همراه ندارد.
- اگر آخرین نگارش VS 2017 را نصب کرده‌اید و این خطا را دارید، به خط فرمان مراجعه کنید. سپس به ریشه‌ی پروژه وارد شده و دستور dotnet restore را صادر کنید و پس از آن دستور dotnet build. این دو دستور، اصل کار هستند و خطاهای واقعی را به شما نمایش می‌دهند.
- پیشنهاد من این است که شروع کنید به فراگیری کار با VSCode. چون فقط از این طریق هست که با زیرساخت واقعی NET Core. آشنا خواهید شد و همچنین نیازی به دریافت چند ده گیگ VS 2017 را نخواهید داشت (به شخصه VS 2017 را از سیستم حذف کرده‌ام و برای NET Core. فقط از VSCode استفاده می‌کنم).
نظرات مطالب
ارتقاء به ASP.NET Core 1.0 - قسمت 2 - بررسی ساختار جدید Solution
یک نکته‌ی تکمیلی
فایل global.json هرچند از پروژه‌های VS 2017 حذف شده‌است اما هنوز هم مورد استفاده‌ی CLI آن هست. برای مثال دستورات خط فرمان dotnet new و یا dotnet build آن از فایل global.json قرار گرفته‌ی در پوشه‌ی جاری (جستجوی یافتن آن تا ریشه‌ی درایو جاری هم ادامه خواهد یافت)، جهت تعیین شماره نگارش SDK مورد استفاده، کمک می‌گیرند. برای نمونه اگر نگارش 2 را نصب کرده باشید، دستور dotnet new از آخرین نگارش نصب شده استفاده خواهد کرد. اما اگر می‌خواهید آن‌را کنترل کنید (امکان کار با چندین SDK به صورت همزمان در پروژه‌های مختلف)، نیاز است global.json را به پروژه اضافه کنید.
نظرات مطالب
شروع به کار با AngularJS 2.0 و TypeScript - قسمت نهم - مسیریابی
نکات ارتقاء به نگارش RC5
در نگارش RC5، فرمت فایل app.routes.ts که در نگارش RC4 معرفی شد، اندکی تغییر کرده‌است.
ابتدای فایل به این شکل:
// - Routes instead of RouteConfig
// - RouterModule instead of provideRoutes
import { Routes, RouterModule } from '@angular/router';
و انتهای آن نیز به این شکل تغییر پیدا می‌کند:
// - Updated Export
export const routing = RouterModule.forRoot(routes);
پس از آن، این تعاریف، با توجه به ساده شدن فایل main.ts، به قسمت imports فایل app.module.ts منتقل و معرفی می‌شوند.
به علاوه در قسمت‌های مختلف برنامه مواردی مانند ROUTER_DIRECTIVES, ROUTER_PROVIDERS, HTTP_PROVIDERS را یافته و حذف کنید. این‌ها نیز به فایل app.module.ts و قسمت imports آن منتقل شده‌اند.
نظرات مطالب
ارتقاء به ASP.NET Core 1.0 - قسمت 6 - سرویس‌ها و تزریق وابستگی‌ها
- در قسمت فریم ورک‌ها، مشخص نکرده‌اید که اگر بسته‌ای از نگارش RC استفاده کرد، چگونه باید وابستگی‌ها را مدیریت کند:
  "frameworks": {
    "netcoreapp1.0": {}
  },
- قسمت «انتخاب فریم ورک‌های مختلف در فایل project.json» را مطالعه کنید: « ... بر این مبنا، dotnet5.6 ذکر شده‌ی در قسمت تنظیمات نگارش RTM، به این معنا است که قادر به استفاده‌ی از بسته‌های نیوگت و کتابخانه‌های تولید شده‌ی با نگارش‌های RC نیز خواهید بود (هرچند برنامه از netcoreapp1.0 استفاده می‌کند) ...»
  "frameworks": {
    "netcoreapp1.0": {
        "imports": [
            "dotnet5.6",
            "portable-net45+win8"
        ]
    }
  },
این سری بر مبنای قالب خالی استاندارد نگارش RTM تهیه شده‌است (و به مرور تکمیل می‌شود؛ اگر علاقمند به مقایسه‌ی تنظیمات بودید).
نظرات مطالب
آغاز به کار با Twitter Bootstrap در ASP.NET MVC
مطلب جاری و سری مرتبط با آن برای بوت استرپ 2 نوشته شد. امروز اگر دستور install-Package Twitter.BootstrapRTL را صادر کنید، بوت استرپ 3.1 را نصب می‌کند که سیستم آن در بسیاری از موارد 180 درجه دگرگون شده نسبت به نگارش 2.
بنابراین برای کار با نگارش 2 بهتر است دستور زیر را صادر کنید:
PM> Install-Package Twitter.BootstrapRTL -Version 2.3.2.1
و یا از مطالب ارتقاء به بوت استرپ 3 کمک بگیرید.
ضمنا فایل‌های مرتبط با نگارش 2، در قسمت‌های بعدی همین سری، در نظرات هر قسمت پیوست شده‌اند.
مطالب
دو خبر در مورد برنامه Reflector

شاید این خبر رو دیده باشید که نگارش بعدی Reflector شرکت RedGate کاملا تجاری است (به قیمت 35 دلار) و دیگر نگارش lite و رایگانی نخواهد داشت؛ برخلاف وعده‌ای که در ابتدای کار در مورد رایگان نگه داشتن کار آقای Lutz Roeder داده بودند. همان روز هم شرکت JetBarins در تصویری به صورت ضمنی اعلام کرد که نگارش بعدی ReSharper چیزی شبیه به Reflector را به صورت سرخود ارائه خواهد داد. کامنت‌های آن هم جالب است. وقت کردید بخونید!


پاسخ به بازخورد‌های پروژه‌ها
مشکل با نوشتن تابع تجمعی سفارشی(از طریق پیاده سازی IAggregateFunction)
ببخشید اگه نگارش بعدی رو به این زودی ارائه نمیدید، لطفا تغییرات رو بگید تا من خودم اعمال کنم.
در ضمن من میخوام به مقادیری که highlight شده دسترسی داشته باشم، اونها رو از هم کم کنم و باتوجه به اینکه باقیمونده منفی میشه یا نه، مقدار "بدهکار" یا "بستانکار" رو در جایی که با علامت قرمز مشخص کردم، قرار بدم. آیا میشه در نگارش جاری به مقدارهای highlight شده دسترسی داشت.

در ضمن من از رویداد Row Created استفاده کردم و متوجه شدم که ابتدا سطرهایی از نوع Summery و PageSummery به این رویداد ارسال میشم و سپس سطرهایی با نوع DataRow،
لذا نمیشد با استفاده از تابع LastOverallAggregateValueOf مقدار تابع تجمعی رو گرفت.
آیا میشه در نگارش فعلی همچین کاری کرد؟ و اگه نمیشه کجای پروژه رو باید تغییر داد؟
با تشکر
نظرات مطالب
مراحل تنظیم Let's Encrypt در IIS
روش دیگری برای آماده سازی دریافت فایل‌های بدون پسوند Let's encrypt
<?xml version="1.0" encoding="UTF-8"?> 
<configuration> 
    <system.webServer> 
        <rewrite> 
            <rules> 
                <rule name="LetsEncrypt" stopProcessing="true"> 
                    <match url=".well-known/acme-challenge/*" /> 
                    <conditions logicalGrouping="MatchAll" trackAllCaptures="false" /> 
                    <action type="None" /> 
                </rule> 
            </rules> 
        </rewrite> 
    </system.webServer> 
</configuration>
نظرات مطالب
فعال سازی و پردازش جستجوی پویای jqGrid در ASP.NET MVC
آیا راه حلی برای اعمال فیلتر بر روی گروه‌ها نیز یافتید؟
همچنین ساختار ارسالی فیلتر‌ها به شکل زیر هست.( هر گروه نیز می‌تواند زیر گروه داشته باشد.)
 {
    "groupOp":"OR",
    "rules":[{"field":"a.id","op":"eq","data":"1"}],
    "groups":[
         {
             "groupOp":"AND",
             "rules":[{"field":"a.id","op":"eq","data":"2"}],
             "groups":[...]
         }
     ]
}