اشتراک‌ها
کتابخانه protobuf-net (پیاده سازی Protocol Buffers برای دات نت)

protobuf-net is a contract based serializer for .NET code, that happens to write data in the "protocol buffers" serialization format engineered by Google. The API, however, is very different to Google's, and follows typical .NET patterns (it is broadly comparable, in usage, to XmlSerializer, DataContractSerializer, etc). It should work for most .NET languages that write standard types and can use attributes. 

Nuget Package : https://www.nuget.org/packages/protobuf-net 


کتابخانه protobuf-net (پیاده سازی Protocol Buffers برای دات نت)
اشتراک‌ها
بهترین تمرینها برای ASP.NET Core Web API

In this post, we are going to write about what we consider to be the best practices while developing the .NET Core Web API project. How we can make it better and how to make it more maintainable.

We are going to go through the following sections:

بهترین تمرینها برای ASP.NET Core Web API
اشتراک‌ها
کتاب Entity Framework Core مختصر و مفید

Entity Framework is Microsoft’s flagship Object/Relation Mapper, and the recommended way to access relational databases. Entity Framework Core is a complete rewrite from the “classic” Entity Framework, building on the new multiplatform .NET Core framework and adding the ability to connect to nonrelational data sources while keeping the features that made Entity Framework Code First so popular. In Entity Framework Core Succinctly, join Ricardo Peres to explore this new version of the O/RM, from getting set up to avoiding common traps. 

کتاب Entity Framework Core مختصر و مفید
اشتراک‌ها
چرا stackOverflow بخش Top Navigation را طراحی مجدد کرد

The data validated our hypothesis — of the average 9.3 million daily visits to Stack Overflow, we get fewer than 88,000 clicks to the navigation or top bar (this includes inbox, rep, profile, and search.) If you divided each individual click per visit, that’s fewer than 1% of visits navigating anywhere (and far fewer if you counted multiple clicks per visit). Our navigation is not being used by 99% of our users. 

چرا stackOverflow بخش Top Navigation را طراحی مجدد کرد
اشتراک‌ها
ارائه‌ی اولین بتای Kendo UI for Angular 2

We are proud to present the first beta release of Kendo UI for Angular 2. It’s been designed specifically for Angular 2. Written in Typescript, built as native Query-free components and distributed as NPM packages, Kendo UI for Angular 2 makes integrating UI components into ng2 a piece of cake for developers. In this beta release, you’ll find the business application essential building blocks — form elements, grid and data visualization components.  

ارائه‌ی اولین بتای Kendo UI for Angular 2
اشتراک‌ها
کتاب ASP.NET MVC 5: A Beginner’s Guide

Table of Contents
  • Introduction
  • Prerequisites
  • Environment Settings and Tools Used
  • Getting Started
  • Brief Overview of ASP.NET MVC
  • Creating a Database
  • Creating Database Tables
  • Adding a New ASP.NET MVC 5 Project
  • Setting Up the Data Access using Entity Framework Database-First approach
  • Creating a Signup Page
  • Creating the Login Page
  • Implementing a Simple Role-Based Page Authorization
  • Implementing Fetch, Edit, Update and Delete Operations
  • Creating a User Profile Page
  • Implementing a ShoutBox Feature
  • Deploying Your ASP.NET MVC 5 App to IIS8
  • Summary 
کتاب ASP.NET MVC 5: A Beginner’s Guide
مطالب
مرجع سریع VSTT

مرجع سریع Visual Studio Team Test 2008 (یکی از ویژگی‌های Visual Studio Team System 2008 ) را در طی 83 صفحه می‌توانید از آدرس زیر دریافت نمائید. بسیاری از سؤالات شما در مورد آزمایشات واحد و امثال آن در این راهنمای سریع توضیح داده شده‌اند.

این مجموعه موارد زیر را شامل می‌شود:
SETUP CONSIDERATIONS
WEB TEST CONSIDERATIONS
WEB SERVICE TEST CONSIDERATIONS
UNIT TEST CONSIDERATIONS
LOAD TEST CONSIDERATIONS
LOAD TEST RIG CONSIDERATION
PERFORMANCE DATA COLLECTION AND USAGE
LOAD TEST RESULTS STORE INFORMATION
TEST CUSTOMIZATION
ITEMS CHANGED OR FIXED IN VSTS 2008 SP1
GENERAL COMMANDS AND TRICKS



مطالب
NuGet 2.0 منتشر شد

نسخه جدید برنامه مدیریت بسته‌های دات نت هم آماده شد. میتونین از اینجا دانلودش کنین. (2.5MB)

طبق آمار خود سایت نوگت تا حالا بیش از 14.6 میلیون بار بسته‌های اون توسط کاربران دانلود شدن و بیش از 7000 بسته متمایز در این گالری موجوده!

NuGet 2.0 Release Notes

یکی از مشکلاتی که تو این نسخه رفع شده موردی بود که در ارتباطات کند اینترنت بوجود میومد (^). تو کنسول این افزونه پس از وارد کردن قسمتی از نام یک بسته با فشردن کلید TAB نام تمام بسته‌هایی که اول اسمشون اون عبارت تایپ شده باشه، لیست میشه (Tab Completion).

این عملیات در نسخه‌های قبلی با استفاده از یک درخواست HTML به OData (^) انجام میشد که داده‌هایی بیش از حد نیاز رو برمیگردوند. اما تو این نسخه این عملیات با استفاده از یک درخواست سریع JSON انجام میشه. (^)

من خودم این ویژگی رو تست کردم و افزایش سرعتش قابل ملاحظه بود!

یکی دیگه بهبودهای حاصله در دریافت بسته‌های وابسته نسبت به نسخه دات نت فریمورک در پروژه هدف هستش. یعنی میشه  تنظیماتی روی بسته‌های نوگت اعمال کرد تا به صورت هوشمندانه نسخه متناسب با دات نت فریمورک مورد استفاده رو دانلود و نصب کنه.

اگه به صفحه مربوط به مشکلات و درخواستهای کاربران برای این افزونه (^) مراجعه کنین میبینید این دو موردکه تو این نسخه برطرف شدن بیشترین تقاضا رو داشتن. مورد اول با توجه به سرعت پایین اینترنت برای خود من خیلی کاربردیه.

نکته: اگر از VS 2010 SP1 استفاده میکنین هنگام به روز رسانی نوگت با استفاده از Extension Manager خود VS ممکنه با خطا مواجه بشین. اصولا بهترین روش نصب نوگت ابتدا unistall کردن نسخه قدیمی این افزونه از طریق appwiz.cpl و سپس نصب نسخه جدید با اجرای فایل vsix. هست (در هر دو قسمت نیاز به دسترسی administrator دارین).

و در نهایت: 

You can develop your own package and share it via the NuGet Gallery. (^

ویرایش:

متاسفانه دیروز وقت نکردم نتایج آزمایش با Fiddler رو اینجا بزارم.

مورد اول (Tab Completion) رو با سه نسخه از نوگت (1.6 و 1.8 و 2.0) برای دو عبارت jque و signa تست کردم و نتایج بدست اومده به شرح زیره. در زیر url درخواست مربوطه به همراه حجم دیتای دریافتی آورده شده:

نوگت 1.6:

nuget ver 1.6

jque:
GET https://nuget.org/api/v2/Packages()?$orderby=DownloadCount%20desc,Id&$filter=startswith(tolower(Id),'jque')%20and%20IsLatestVersion&$skip=0&$top=90 HTTP/1.1
53691 bytes

signa:
GET https://nuget.org/api/v2/Packages()?$orderby=DownloadCount%20desc,Id&$filter=startswith(tolower(Id),'signa')%20and%20IsLatestVersion&$skip=0&$top=90 HTTP/1.1
11536 bytes

نوگت 1.8:

nuget ver 1.8

jque:
GET https://nuget.org/api/v2/Packages()?$orderby=DownloadCount%20desc,Id&$filter=startswith(tolower(Id),'jque')%20and%20IsLatestVersion&$skip=0&$top=90 HTTP/1.1
53694 bytes

signa:
GET https://nuget.org/api/v2/Packages()?$orderby=DownloadCount%20desc,Id&$filter=startswith(tolower(Id),'signa')%20and%20IsLatestVersion&$skip=0&$top=90 HTTP/1.1
11536 bytes

نوگت 2.0:

nuget ver 2.0

jque:
GET https://nuget.org/api/v2/package-ids?partialId=jque HTTP/1.0
598 bytes

signa:
GET https://nuget.org/api/v2/package-ids?partialId=signa HTTP/1.0
457 bytes

پاسخ سرور به عبارت signa در نسخه 2.0:

HTTP/1.1 200 OK
Cache-Control: private
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNetMvc-Version: 3.0
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Thu, 28 Jun 2012 07:23:06 GMT
Connection: close
Content-Length: 457

["SignalR","SignalR.Client","SignalR.Client.Silverlight","SignalR.Client.Silverlight5","SignalR.Client.WP7","SignalR.EventStream","SignalR.Hosting.AspNet","SignalR.Hosting.Common","SignalR.Hosting.Owin","SignalR.Hosting.Self","SignalR.Js","SignalR.MicroSliver","SignalR.Ninject","SignalR.RabbitMq","SignalR.Reactive","SignalR.Redis","SignalR.Sample","SignalR.Server","SignalR.StructureMap","SignalR.WebSockets","SignalR.WindowsAzureServiceBus","Signals.js"]

میبینید که غیرقابل مقایسه هستن! و همونوطور که آقای هنسلمن (^) در مورد نسخه‌های قدیمی گفتن: «داده‌های بیش از حد نیاز رو برمیگردونن»

نسخه‌های قبل از 2.0 همگی از odata استفاده میکردن و داده‌های برگشتی تماما encrypt شده‌اند. اما در نسخه 2.0 داده‌های برگشتی از نوع JSON هست (به Fiddler مراجعه کنین تا تفاوت واقعی رو ببینین. البته برای اینکه داده‌های encrypt شده رو در fiddler ببینین باید طبق راهنمایی خودش از تنظیمات مربوط به decrypt ترافیک https استفاده کنین)

اشتراک‌ها
FASTER؛ جایگزین سورس باز مایکروسافت برای Redis

Note that FASTER is not directly comparable to Redis, as FASTER is not just a cache. FASTER can index and access data larger than memory, as well as take consistent checkpoints for recovery, more like a persistent hash key-value store + cache combination. FASTER is multi-threaded and latch-free as well, which gives it very high performance on a single machine.

Some recently completed and ongoing/future work items on our roadmap can be found at https://microsoft.github.io/FASTER/roadmap. For instance, in FASTER C#, we recently added log compaction, support for deletes, inline variable-sized allocations, and a read cache. 

FASTER؛ جایگزین سورس باز مایکروسافت برای Redis
اشتراک‌ها
سری ساخت یک Angular Dashboard با NET Core.

.NET Core + Angular Dashboard

Topics Covered:
- Building a dashboard application in Angular
- Building a Web API in .NET Core 2.0
- Using Chart.js to build stunning charts of different types
- Making HTTP requests using Angular to query a Web API
- Using Postman to send requests
- Working with Observables
- Using Input and Output decorators in Angular
- Using PostgreSQL and pgAdmin
- Automatically seeding a database with large amounts of sample data
- Styling an application using custom CSS and Bootstrap 4
- Using Map, Filter, and Reduce in Javascript
- Creating Routes in Angular
- Get, Put, Post, Patch Web API Controller Action request types
- Configuring your API for CORS
 

سری ساخت یک Angular Dashboard با NET Core.