ساخت ربات تلگرامی با #C
LocalDB FAQ
یک مقایسه خوب هم در اینجا هست که میتونه به انتخاب نگارش مناسب کمک کنه:
Entity Framework و آینده
- نسخه express مخصوص vs2012 هم موجود است (^).
در قسمت قبل کلیات نحوهی استفاده از Animation در Angular را مورد بررسی
قرار دادیم. در این بخش قصد داریم نحوهی اعمال Animation های پیشرفتهتری
را مورد بررسی قرار دهیم.
وضعیت void
این وضعیت به تمامی المانهایی که به view متصل نیستند، اعمال خواهد شد. این عدم اتصال به view برای یک المان میتواند بخاطر این باشد که این المان هنوز به صفحه وارد نشده است یا اینکه قبلا در صفحه بوده و الان در حال حذف شدن است.
درکل وضعیت void برای تعریف انیمیشنی در هنگام ورود و خروج المان به و از صفحه مورد استفاده قرار میگیرد. برای مثال گذار *=>void به تمامی المانهایی که view را ترک میکنند اعمال خواهد شد و void=>* به المانهایی که به view اضافه میشوند.
قطعه کد زیر سبب تعریف انیمیشنی بر روی المنتهای ورودی و خروجی از صفحه خواهد شد:
animations: [ trigger('flyInOut', [ transition('void => *', [ style({transform: 'translateX(-100%)'}), animate(100) ]), transition('* => void', [ animate(100, style({transform: 'translateX(100%)'})) ]) ]) ]
در این قطعه کد یک trigger به نام flyInOut تعریف شده است که در آن برای گذار ورود و خروج المنت در صفحه، انیمیشن تعریف شده است. همانطور که واضح است نیازی به تعریف حالت void، توسط تابع state وجود ندارد.
کد زیر نحوه استفاده از این trigger را نشان میدهد
(با فرض اینکه لیستی از کاربران را در متغییر users داریم که با
فراخوانی متد addNewUser یک آیتم به آن اضافه شده و با زدن دکمه Remove آیتم مورد نظر
از لیست حذف میشود):
<ul> <li *ngFor="let user of users" [@flyInOut]> {{user.FirstName}} <button (click)="remove(user)">Remove</button> </li> </ul> <button (click)="addNewUser()">Add New User</button>
همچنین به جای void=>* در تابع transition، از :enter و به جای *=>void، از :leave میتوان استفاده کرد.
transition(':enter', [ ... ]); // void => * transition(':leave', [ ... ]); // * => void
واضح است که شما میتوانید از حالت void به هر حالت
تعریف شدهی توسط خودتان نیز گذاری را تعریف کنید. برای مثال اگر قبلا حالت active و inactive را با استفاده
از تابع state
ساخته باشید، گذارهای زیر قابل تعریف خواهند بود و هیچگونه محدودیتی وجود نخواهد
داشت:
transition('void => inactive', //...) transition('inactive => void', //...) transition('void => active', //..) transition('active => void', //...)
کاربرد * در style
فرض کنید میخواهیم گذاری را تعریف کنیم که هنگام ورود
المنت، در ابتدا ارتفاع المنت را به مقداری 0px تنظیم
کرده و سپس همراه با یک انیمیشن، مقدار ارتفاع را به مقدار اصلی تنظیم خواهد کرد. چالشی
که در اینجا وجود دارد این است که مقدار ارتفاع المنت مشخص نیست و بستگی به اندازه
صفحه نمایش داشته و توسط آن css تنظیم
خواهد شد. در اینجا میتوان از * برای
بدست آورن مقدار جاری یک خصوصیت از استایل استفاده کرد:
transition('void => *', [ style({height: 0 }), animate(1000,style({ color: '*' })) ]),
انیمیشن چند مرحلهای با استفاده از Keyframes
تا اینجا تمامی انیمیشنهایی را که بررسی کردیم، یک انیمیشن یک مرحلهای بودند. در صورتیکه یک انیمیشن حرفهای، متشکل از چند مرحله گذار خواهد بود. برای انجام اینکار از تابع Keyframes استفاده میکنیم. برای مثال میخواهیم انیمیشن ورود المنت را به صورتی در نظر بگیریم که المنت در ابتدا در نقطه -75% بالاتر از مکانیکه در آنجا نمایش داده خواهد شد، با opacity صفر شروع به حرکت کرده و در مرحله بعد به نقطه 35px پائینتر از مکان اصلی خود آمده و opacity نیم را خواهد داشت و در نهایت، با حرکت بعدی به جای اصلی خود خواهد رفت و opacity یک را پیدا میکند.
animations: [ trigger('flyInOut', [ transition('void => *', [ animate(300, keyframes([ style({opacity: 0, transform: 'translateY(-75%)', offset: 0}), style({opacity: 0.5, transform: 'translateY(35px)', offset: 0.3}), style({opacity: 1, transform: 'translateY(0)', offset: 1.0}) ])) ]) ]) ]
تابع Keyframes آرایهای از تابع style را دریافت میکند که هر تابع شامل خصوصیتهای انیمیشن به همراه یه خصوصیت offset است. این خصوصیت اختیاری است و مقدار صفر تا یک را قبول میکند و بیانگر زمان اجرای تابع style بعدی است.
رخداد شروع و پایان انیمیشن
با استفاده از @triggerName.start و @triggerName.done با شروع و پایان انیمیشن خود میتوانید یک تابع سفارشی را نیز اجرا کنید. برای مثال کد زیر را در نظر بگیرید:
template: ` <ul> <li *ngFor="let hero of heroes" (@flyInOut.start)="animationStarted($event)" (@flyInOut.done)="animationDone($event)" [@flyInOut]="'in'"> {{hero.name}} </li> </ul> `,
در این مثال هنگام شروع انیمیشن تابع animationStarted و پس از اتمام انیمیشن، تابع animationDone اجرا خواهند شد.
بازسازی LocalDb
sqllocaldb create "v11.0"
Creation of LocalDB instance "v11.0" with version 11.0 failed because of the following error: LocalDB instance is corrupted. See the Windows Application event log for event details.
sqllocaldb delete "v11.0"
sqllocaldb create "v11.0"
<Project Sdk="Microsoft.NET.Sdk.Worker"> <ItemGroup> <OpenApiReference Include="OpenAPIs\v1.json" CodeGenerator="NSwagCSharp" Namespace="GettingStarted" ClassName="MyClient"> <SourceUri>https://geo.api.vlaanderen.be/capakey/v2/swagger/docs/v1</SourceUri> </OpenApiReference> </ItemGroup> </Project>
1.Visual Studio 2017 15.7 منتشر شد
These are the customer-reported issues addressed in 15.7.1:
- This release includes a fix that reduces memory usage and GC pressure during solution load.
Microsoft Security Advisory for .NET Core Denial Of Service Vulnerability
CVE-2018-0765
Microsoft is releasing this security advisory to provide information about a vulnerability in .NET Core and .NET native version 2.0. This advisory also provides guidance on what developers can do to update their applications to remove this vulnerability.
Microsoft is aware of a denial of service vulnerability that exists when .NET Framework and .NET Core improperly process XML documents. An attacker who successfully exploited this vulnerability could cause a denial of service against a .NET Framework, .NET Core, or .NET native application.
The update addresses the vulnerability by correcting how .NET Framework, .NET Core, and .NET native applications handle XML document processing.
If your application is an ASP.NET Core application, developers are also advised to update to ASP.NET Core 2.0.8.
2.Visual Studio 2019 RC منتشر شد
Top Issues Fixed in Visual Studio 2019 RC.2
- Find in files "Locating next match" UI is annoying.
- Find files keeps defaulting to current document.
- Quick references freezes VS 2019 RC.
- PackageId:MsSqlCmdLnUtils;PackageAction:Install;ReturnCode:1603;.
- Error List does not show errors because it is scoped to "Current Document".
- Cannot use conditional breakpoint on PropertyInfo.Name value.
- Visual Studio crashes when parsing macros at the end of a file.
- Search in Visual Studio 2019 is very slow.
- Visual Studio hangs when starting debugging.
- vdproj not supported in Visual Studio 2019 RC.
- Visual Studio installer welcome image contains offensive element for Chinese.
- VSIX Extension pre-req has been removed in Visual Studio 2019 RC breaking extension compatibility.
- Create Project from Start Screen Ignores Selected Project Folder.
- cpp properties is dialog does not show up when using Project menu item or select "Manage configuration" drop down menu.
- Visual Studio 2019 Build Tools - developer prompt title says "Developer Command Prompt for Visual Studio 2017".
- German tranlation regarding the Feedback Tool: Help > Send Feedback > Report a Problem.
- 自动完成功能,如果双击候选项,会丢失输入焦点,需要单机编辑器才能继续输入-AutoComplete function, if you double-click the candidate, will lose the input focus, need a stand-alone editor to continue to enter.
- Context menus are sometimes placed on the wrong monitor in a multiple monitor configuration.
- Visual Studio 2019 conflict with QQ Pinyin.
- Cannot drag maximized Visual Studio window.
- Fixed slow reload of multiple C# and Visual Basic projects.
- When IntelliSense is present, when a user types Shift + Enter, the active selection will be completed and a new line inserted.
- Fixed a PMA issue where editor tooltips and light bulb doesn't render properly.
- Notifications about crashes caused by extensions now show up again.
- Notifications about performance of Visual Studio have been secured against tampering.
- Fixed an issue with toolbar rendering when dragged across displays.
- Fixed an issue with Tools Options rendering when running with per-monitor awareness enabled.
- Various DpiHelper classes has been deprecated (extensibility).
- Fixed splash screen scaling to better match the primary monitor scale factor.
- Fixed an issue in settings import where warnings/errors were not always reported correctly.
- Fixed an issue where Tools Options reported software rendering regardless of rendering tier.
- Fixed an issue where the name of the open folder was not displayed in the title bar region.
- Fixed an issue with find in files positioning when per-monitor awareness is enabled.
- Fixed an issue with dock adorner rendering when per-monitor awareness is enabled.