نسخه دوم فریمورک MSTest سورس باز شد
As promised , we announced the open sourcing of MSTest Test Framework “MSTest V2”. The community now has a fully supported, open source, cross-platform implementation of the MSTest V2 portfolio with which to write tests targeting .NET Framework, .NET Core and ASP.NET Core on Windows, Linux, and Mac.
Download Link: ISO File
Visual Studio Team Foundation Server 2013 is the source-code-control, project-management, and team-collaboration platform at the core of the Microsoft suite of Application Lifecycle Management (ALM) tools, which help teams be more agile, collaborate more effectively, and deliver quality software more consistently.
بررسی بهبودهای کارآیی در NET 7.
TL;DR: .NET 7 is fast. Really fast. A thousand performance-impacting PRs went into runtime and core libraries this release, never mind all the improvements in ASP.NET Core and Windows Forms and Entity Framework and beyond. It’s the fastest .NET ever. If your manager asks you why your project should upgrade to .NET 7, you can say “in addition to all the new functionality in the release, .NET 7 is super fast.”
سری آموزشی Blazor Hybrid
Blazor Hybrid for Beginners
Join James Montemagno as he takes you on a journey of building your first Hybrid applications across iOS, Android, Mac, Windows, and Web with ASP.NET Core, Blazor, Blazor Hybrid, and .NET MAUI! You will learn how to use Blazor Hybrid to blend desktop and mobile native client frameworks with .NET and Blazor.
In a Blazor Hybrid app, Razor components run natively on the device. Components render to an embedded Web View control through a local interop channel. Components don't run in the browser, and WebAssembly isn't involved. Razor components load and execute code quickly, and components have full access to the native capabilities of the device through the .NET platform. Component styles rendered in a Web View are platform dependent and may require you to account for rendering differences across platforms using custom stylesheets.
Blazor Hybrid support is built into the .NET Multi-platform App UI (.NET MAUI) framework. .NET MAUI includes the BlazorWebView control that permits rendering Razor components into an embedded Web View. By using .NET MAUI and Blazor together, you can reuse one set of web UI components across mobile, desktop, and web.
15 درس هنگام مهاجرت به .NET Core
2. Building for deployment
3. NetStandard vs NetCoreApp1.0
4. IIS is dead, well sort of
5. HttpModules and HttpHandlers are replaced by new “middleware”
6. FileStream moved to System.IO.FileSystem ???
7. StreamReader constructor no longer works with a file path
8. Platform specific code… like Microsoft specific RSA
9. Newtonsoft changed to default to camel case on field names 🙁
10. Log4net doesn’t work and neither do countless other dependencies, unless you target .NET 4.5!
11. System.Drawing doesn’t exist
12. DataSet and DataTable doesn’t exist
13. Visual Studio Tooling
14. HttpWebRequest weird changes
15. Creating a Windows Service in .NET Core
در این قسمت به نحوهی تبدیل سورس به یک فایل قابل انتشار میپردازیم. کد زیر را به عنوان مثال در نظر بگیرید:
public sealed class Program { public static void Main() { System.Console.WriteLine("Hi"); } }
csc.exe /out:Program.exe /t:exe /r:MSCorLib.dll Program.cs
mscorlib یک فایل سورس است که شامل همهی نوعها، از قبیل int,string,byte و خیلی از نوعهای دیگر میشود. از آنجائیکه استفادهی از این نوعها به طور مکرر توسط برنامه نویسها صورت میگیرد، کمپایلر به طور خودکار این کتابخانه را به لیست ارجاعات اضافه میکند. به بیان دیگر خط بالا به شکل زیر هم قابل اجراست:
csc.exe /out:Program.exe /t:exe Program.cs
به علاوه از آنجایی که بقیهی سوئیچها هم مقدار پیش فرضی را دارند، خط زیر هم معادل خطوط بالاست:
csc.exe Program.cs
اگر به هر دلیلی دوست ندارید که سمت mscorlib ارجاعی صورت بگیرید، میتوانید از دستور زیر استفاده کنید:
/nostdlib
csc.exe /out:Program.exe /t:exe /nostdlib Program.cs
//CUI /t:exe //GUI /t:winexe //Winsows store App /t:appcontainerexe
/out:MyProject.exe /target:winexe
و برای در نظر گرفتن این سوئیچها فایل پاسخگو را به کامپایلر معرفی میکنیم:
csc.exe @MyProject.rsp CodeFile1.cs CodeFile2.cs
در صورتیکه چندین فایل پاسخگو که به آن فایلهای محلی local میگویند، معرفی کنید که دستورات آنها(سوئیچ) با دستورات داخل csc.rsp مقدار متفاوتی داشته باشند، فایلهای محلی الویت بالاتری نسبت به فایل global داشته و تنظمیات آنها روی فایل global رونوشت میگردند.
موقعیکه شما دات نت فریمورک را نصب میکنید، فایل csc.rsp را با تنظیمات پیش فرض در مسیر زیر نصب میکند:
%SystemRoot%\ Microsoft.NET\Framework(64)\vX.X.X
حروف x نمایانگر نسخهی دات نت فریمورکی هست که شما نصب کردهاید. آخرین ورژن از این فایل در زمان نگارش کتاب، شامل سوئیچهای زیر بوده است.
# This file contains commandline options that the C# # command line compiler (CSC) will process as part # of every compilation, unless the "/noconfig" option # is specified. # Reference the common Framework libraries /r:Accessibility.dll /r:Microsoft.CSharp.dll /r:System.Configuration.dll /r:System.Configuration.Install.dll /r:System.Core.dll /r:System.Data.dll /r:System.Data.DataSetExtensions.dll /r:System.Data.Linq.dll /r:System.Data.OracleClient.dll /r:System.Deployment.dll /r:System.Design.dll /r:System.DirectoryServices.dll /r:System.dll /r:System.Drawing.Design.dll /r:System.Drawing.dll /r:System.EnterpriseServices.dll /r:System.Management.dll /r:System.Messaging.dll /r:System.Runtime.Remoting.dll /r:System.Runtime.Serialization.dll /r:System.Runtime.Serialization.Formatters.Soap.dll /r:System.Security.dll /r:System.ServiceModel.dll /r:System.ServiceModel.Web.dll /r:System.ServiceProcess.dll /r:System.Transactions.dll /r:System.Web.dll /r:System.Web.Extensions.Design.dll /r:System.Web.Extensions.dll /r:System.Web.Mobile.dll /r:System.Web.RegularExpressions.dll /r:System.Web.Services.dll /r:System.Windows.Forms.Dll /r:System.Workflow.Activities.dll /r:System.Workflow.ComponentModel.dll /r:System.Workflow.Runtime.dll /r:System.Xml.dll /r:System.Xml.Linq.dll
البته ارجاع کردن به این اسمبلیها تا حد کمی باعث کند شدن صورت کامپایل میشوند؛ ولی تاثیری بر فایل نهایی و نحوهی اجرای آن نمیگذارند.
نکته: در صورتی که قصد ارجاعی را دارید، میتوانید آدرس مستقیم اسمبلی را هم ذکر کنید. ولی اگر تنها به نام اسمبلی اکتفا کنید، مسیرهای زیر جهت یافتن اسمبلی بررسی خواهند شد:
- دایرکتوری برنامه
- دایرکتوری که شامل فایل csc.exe میشود. که خود فایل mscorlib از همانجا خوانده میشود و مسیر آن شبیه مسیر زیر است:
%SystemRoot%\Microsoft.NET\Framework\v4.0.#####
- هر دایرکتوری که توسط سوئیچ lib/ مشخص شده باشد.
- هر دایرکتوری که توسط متغیر محلی lib مشخص شده باشد.