Entity Signal allows you to connect to Entity Framework through SignalR and get updates on subscribed data in real time. This lowers the number of refreshes done by the user and ultimatly allows you to do more with fewer servers. It is also requires minimal changes, so you can make realtime apps about as easily as you can make standard apps.
در NET Core 3x. دیگر بستههای نیوگت Shared framework به صورت جداگانه تولید و توزیع نمیشوند
فرض کنید کتابخانهای را مخصوص ASP.NET Core 2x تولید کردهاید و این کتابخانه، وابستگی را به بستهی Microsoft.AspNetCore.Mvc.Core دارد و اکنون قصد دارید نگارش 3x آنرا تهیه کنید. اگر به نیوگت مراجعه کنید، آخرین نگارشی که از آن موجود است، 2.2.5 است و دیگر هیچ خبری، حتی از نگارشهای preview مربوط به 3x، در اینجا وجود ندارد. علت اینجا است که تیم ASP.NET Core تصمیم گرفتهاست، دیگر بستههای نیوگت زیر مجموعهی Microsoft.AspNetCore.App را به صورت جداگانه تولید و منتشر نکند (و دیگر آخرین نگارشهای آنها را در سایت نیوگت نخواهید یافت).
همچنین نحوهی تعریف متاپکیج Microsoft.AspNetCore.App اینبار از طریق PackageReferenceها صورت نمیگیرد و بر اساس معرفی FrameworkReferenceها انجام شدهاست:
به همین جهت فایل csproj نگارش 3x، دیگر شامل Microsoft.AspNetCore.App نیست (حتی تعریف FrameworkReference فوق را نیز به همراه ندارد). علت اینجا است که اگر TargetFramework پروژهی وب، به netcoreapp3.0 اشاره کند، به صورت خودکار میتوانید از آخرین نگارش Microsoft.AspNetCore.App نصب شدهی توسط SDK، در برنامهی خود استفاده کنید و نیاز به هیچ نوع تنظیم اضافهتری ندارد و ذکر netcoreapp3.0، به معنای استفادهی خودکار از تمام بستههای نیوگت به همراه Shared framework همراه با SDK جاری است. بدیهی است هر وابستگی دیگری که در لیست Microsoft.AspNetCore.App قرار نداشته باشد، باید همانند سابق نصب شود.
یک نکته: تمام بستههای جدید تولید شده، بر اساس netcoreapp3.0 تهیه شدهاند؛ منهای بستههای Microsoft.Extensions و همچنین Entity Framework Core که هنوز بر پایهی NET Standard. تهیه میشوند. بنابراین فایل پروژهی یک class library که بخواهد از بستههای مبتنی بر netcoreapp3.0 استفاده کند و همچنین بستههای Microsoft.AspNetCore.App را نیز لحاظ کند، چنین شکلی را پیدا میکند (و TargetFramework آن دیگر برای مثال netstandard2.0 نمیتواند باشد):
فرض کنید کتابخانهای را مخصوص ASP.NET Core 2x تولید کردهاید و این کتابخانه، وابستگی را به بستهی Microsoft.AspNetCore.Mvc.Core دارد و اکنون قصد دارید نگارش 3x آنرا تهیه کنید. اگر به نیوگت مراجعه کنید، آخرین نگارشی که از آن موجود است، 2.2.5 است و دیگر هیچ خبری، حتی از نگارشهای preview مربوط به 3x، در اینجا وجود ندارد. علت اینجا است که تیم ASP.NET Core تصمیم گرفتهاست، دیگر بستههای نیوگت زیر مجموعهی Microsoft.AspNetCore.App را به صورت جداگانه تولید و منتشر نکند (و دیگر آخرین نگارشهای آنها را در سایت نیوگت نخواهید یافت).
همچنین نحوهی تعریف متاپکیج Microsoft.AspNetCore.App اینبار از طریق PackageReferenceها صورت نمیگیرد و بر اساس معرفی FrameworkReferenceها انجام شدهاست:
<ItemGroup> <FrameworkReference Include="Microsoft.AspNetCore.App" /> </ItemGroup>
یک نکته: تمام بستههای جدید تولید شده، بر اساس netcoreapp3.0 تهیه شدهاند؛ منهای بستههای Microsoft.Extensions و همچنین Entity Framework Core که هنوز بر پایهی NET Standard. تهیه میشوند. بنابراین فایل پروژهی یک class library که بخواهد از بستههای مبتنی بر netcoreapp3.0 استفاده کند و همچنین بستههای Microsoft.AspNetCore.App را نیز لحاظ کند، چنین شکلی را پیدا میکند (و TargetFramework آن دیگر برای مثال netstandard2.0 نمیتواند باشد):
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>netcoreapp3.0</TargetFramework> </PropertyGroup> <ItemGroup> <FrameworkReference Include="Microsoft.AspNetCore.App" /> </ItemGroup> </Project>
مسخرهترین کاری که کرده اینه که با NET Standard 2.1. توسعه اش داده! در حالی که NET Framework. از NET Standard 2.1 پشتیبانی نمیکنه و نخواهد کرد + فقط روی ویندوز اجرا میشه. عملا هیچ گزینه ای نداریم برای اجراش به جز NET Core 3.
خب از اول با NET Core 3. توسعه اش میداد! به نظرم در آینده نزدیک هم که Mono از NET Standard 2.1. پشتیبانی کنه هم باز توجیه مناسبی براش نمیشه، چون کسی روی ویندوز NET Core 3. رو بی خیال نمیشه که برنامه اش رو با Mono اجرا کنه.
نظرات مطالب
C# 8.0 - Async Streams
از زمان ارائهی NET Core 3 Preview 7. به بعد، امکان تعریف یک چنین اکشن متدهایی در ASP.NET Core وجود دارد:
[HttpGet] public IAsyncEnumerable<Product> Get() => productsRepository.GetAllProducts();
با تشکر از وقتی که میزارین برا این مقالات ارزنده .
من وقتی به Entity framework 6 ارتقاء داردم مهمترین مشکلم این بود که t4 palmate هایی که برا scaffolding استفاده میکردم دیگه جواب نمیداد . مضمون ارورش این بود که این ورژن از Entity framework رو ساپورت نمیکنه
نظرات مطالب
خلاصهای از آغاز به کار با NHibernate
با سلام
من مدتی قبل در مورد ORMها تحقیق کردم و به این نتیجه رسیدم که بهترین آنها Entity Framework است که حتی در نهایت LINQ to SQL را هم آرام آرام حذف می کند و جایگزین آن می شود. می توانید مقاله ای در مورد مقایسه nHibernate و Entity Framework تحریر کنید؟ (مثل مقایسه ای که در مورد jQuery و ASP AJAX داشتید)
من مدتی قبل در مورد ORMها تحقیق کردم و به این نتیجه رسیدم که بهترین آنها Entity Framework است که حتی در نهایت LINQ to SQL را هم آرام آرام حذف می کند و جایگزین آن می شود. می توانید مقاله ای در مورد مقایسه nHibernate و Entity Framework تحریر کنید؟ (مثل مقایسه ای که در مورد jQuery و ASP AJAX داشتید)
بازخوردهای پروژهها
ایجاد یک WCF Ria Service با رویکرد Entity Framework Code First
مبحث Entity Framework Code First در سایت به خوبی پوشش داده شده ، دربارهی WCF Ria Service هم اطلاعات و مطالب مفیدی در سایت هست. اگر ممکن است مطالب مربوط به WCF Ria Service با یک مثال یا آموزش با رویکرد Entity Framework Code First تکمیل گردد.