نظرات مطالب
BloggerToCHM
چه ویندوزی دارید؟

چند حدس:
- html help work shop نصب نشده؟
- html help work shop نصب شده ولی مسیری که از رجیستری گرفته میشه غلط هست و فایل نهایی ساخته نمیشه.
به منوی فایل گزینه preferences مراجعه کنید، گزینه delete temp files را false کنید و save . الان یکبار دیگر db to chm رو تست کنید. فایل‌های موقتی حذف نخواهند شد. یک مجموعه کامل تولید می‌شود که فایل blog.hhp آن در html help work shop قابل گشودن و کامپایل است (روش دستی).

برنامه به صورت خودکار دنبال این مسیر می‌گردد:
HKEY_CURRENT_USER\Software\Microsoft\HTML Help Workshop
لطفا بررسی کنید آیا این مسیر اصلا در رجیستری ویندوز هست؟ آیا InstallDir آن درست مقدار دهی شده؟

با تشکر
اشتراک‌ها
ده مقاله برتر Visual Studio Magazine از سری "چگونه" در سال 2012
این ده مقاله به شرح زیر می‌باشند:

10) Practical .NET: Powerful JavaScript With Upshot and Knockout
The Microsoft JavaScript Upshot library provides a simplified API for retrieving data from the server and caching it at the client for reuse. Coupled with Knockout, the two JavaScript libraries form the pillars of the Microsoft client-side programming model.

9) On VB: Database Synchronization with the Microsoft Sync Framework
The Microsoft Sync Framework is a highly flexible framework for synchronizing files and data between a client and a master data store. With great flexibility often comes complexity and confusion, however.

8) C# Corner: Performance Tips for Asynchronous Development in C#
Visual Studio Async is a powerful development framework, but it's important to understand how it works to avoid performance hits.

7) 2 Great JavaScript Data-Binding Libraries
JavaScript libraries help you build powerful, data-driven HTML5 apps.

6) On VB: Entity Framework Code-First Migrations
Code First Migrations allow for database changes to be implemented all through code. Through the use of Package Manager Console (PMC), commands can be used to scaffold database changes.

5) C# Corner: The New Read-Only Collections in .NET 4.5
Some practical uses for the long-awaited interfaces, IReadOnlyList and IReadOnlyDictionary, in .NET Framework 4.5.

4) C# Corner: Building a Windows 8 RSS Reader
Eric Vogel walks through a soup-to-nuts demo for building a Metro-style RSS reader.

3) C# Corner: The Build Pattern in .NET
How to separate complex object construction from its representation using the Builder design pattern in C#.

2) Inside Visual Studio 11: A Guided Tour
Visual Studio 2012 (code-named Visual Studio 11 then) is packed with new features to help you be a more efficient, productive developer. Here's your guided tour.

1) HTML5 for ASP.NET Developers
The technologies bundled as HTML5 finally support what developers have been trying to get HTML to do for decades.

 

ده مقاله برتر Visual Studio Magazine از سری "چگونه" در سال 2012
پاسخ به بازخورد‌های پروژه‌ها
خطا هنگام باز شدن کلاینت در ویندوز 8.1
- آیا در کنار فایل اجرایی برنامه، فایلی به نام ErrorsLog.Log تشکیل می‌شود؟ اگر بله، چه خطایی در آن گزارش شده‌است.
- اگر فایل ErrorsLog.Log تشکیل نشده‌است، مراجعه کنید به این مسیر جهت مشاهده‌ی خطای لاگ شده در event viewer ویندوز:

 Computer management -> event viewer -> windows logs -> application  
مطالب
PowerShell 7x - قسمت اول - معرفی و نصب
PowerShell یک ابزار task automation است که همزمان یک command-line shell، زبان اسکریپتی و یک فریم‌ورک configuration management نیز میباشد. برخلاف دیگر shellها که مبتنی بر رشته هستند، ورودی و خروجی آن اشیاء دات‌نتی است و از آنجائیکه مبتنی بر CLR میباشد، امکان نوشتن توابع، کلاس‌ها و ماژول‌ها را به ما میدهد. همچنین به صورت توکار امکان کار با فرمت‌هایی از قبیل CSV, XML, JSON را در اختیارمان قرار میدهد. بخاطر extensible بودن، تعداد زیادی ماژول و افزونه برای نصب وجود دارند که کار با انواع تکنولوژی‌ها را میسر میسازند: 
  • Azure
  • Windows
  • Exchange
  • SQL
  • AWS
  • VMWare
  • Google Cloud
PowerShell در ابتدا در سال 2006 برای ویندوز XP به همراه 130 کامند ارائه شد. نسخه‌های بعدی آن نیز به ترتیب 2.0, 3.0, 4.0, 5.0 و در نهایت 5.1 به همراه تعداد بیشتری از Commandها ارائه شدند. تا اینجا فقط بر روی ویندوز استفاده بود، چون براساس Full .NET Framework توسعه داده شده بود، تا در نهایت در سال 2018 نسخه cross-platform آن یعنی نسخه 6.0 ارائه شد که مبتنی بر .NET Core 2 بود. در نسخه 6.2 تعداد Commandها به نصف تعداد نسخه 5.0 هم نمیرسید. در نهایت نسخه 7.0 ارائه شد که هم backward compatible بود و هم اینکه به صورت cross-platform نیز ارائه شد؛ لازم به ذکر است، این نسخه از PowerShell براساس .NET Core 3 توسعه یافت. PowerShell به صورت پیش‌فرض بر روی ویندوز ۷ (همچنین ویندوز ۲۰۰۸) به بعد، قابل نصب است. لازم به ذکر است که اسم پراسس PowerShell از نسخه ۷ به بعد از powershell.exe به pwsh.exe تغییر نام یافته است. بنابراین به صورت side-by-side در کنار PowerShell 5.1 قابل نصب است.


ISE یا همان Integrated Scripting Environment در واقع همان IDE برای نوشتن اسکریپت‌های چندخطی PowerShell است. از نسخه ۷ به بعد، PowerShell دیگر با ISE ارائه نمیشود و فقط برای ویندوز و در support mode است: 


برای نوشتن اسکریپت‌های PowerShell بهتر است extension رسمی آن را نصب کنید (+). با نصب این extension، محیط VSCode ظاهری شبیه به ISE پیدا خواهد کرد (البته به صورت پیش‌فرض فعال نیست و باید بعد از نصب theme را تغییر دهید). همچنین از Language Server مربوط به PowerShell نیز استفاده میکند که نوشتن و دیباگ کردن اسکریپت‌های PowerShell را به مراتب ساده‌تر خواهد کرد:
 

همچنین قابلیت IntelliSense  را نیز ارائه میدهد:

یکسری قابلیت‌های دیگر هم به همراه این extension به VSCode اضافه میشوند؛ به عنوان مثال PowerShell Script Analyzer نیز نصب خواهد شد که برای بررسی کیفیت کدها بسیار مفید است.


در اینجا میتوانید لیست کامل این ruleها را مشاهده کنید. از دیگر قابلیت‌های این extension میتوان به موارد زیر اشاره کرد:
  • Syntax highlighting
  • Code snippets
  • IntelliSense for cmdlets and more
  • Rule-based analysis provided by PowerShell Script Analyzer
  • Go to Definition of cmdlets and variables
  • Find References of cmdlets and variables
  • Document and workspace symbol discovery
  • Run selected selection of PowerShell code using F8
  • Launch online help for the symbol under the cursor using Ctrl+F1
  • Local script debugging
  • Extension Terminal support
  • PowerShell ISE color theme 

نصب PowerShell بر روی macOS 
نصب PowerShell به چند طریق قابل انجام است که در اینجا میتوانید مشاهده کنید؛ به عنوان مثال برای نصب PowerShell روی macOS تنها کافی است دستور زیر را وارد کنید: 
brew install --cask powershell
سپس دستور pwsh قابل استفاده خواهد بود: 
❯ pwsh
PowerShell 7.2.6
Copyright (c) Microsoft Corporation.

https://aka.ms/powershell
Type 'help' to get help.

PS />

در قسمت‌های بعدی، مقدمات کار با PowerShell را توضیح خواهیم داد.
اشتراک‌ها
خاتمه توسعه مجموعه‌های Expression مایکروسافت
مایکروسافت مجموعه‌های Expression Design 4 ، Expression Web 4 و کلیه موارد هم خانواده را بازنشسته اعلام کرده و آن‌ها را برای دریافت رایگان قرار داده است. همچنین نسخه Blend آن با VS2012 یکپارچه خواهد شد که به همراه Visual Studio 2012 Update 2 عرضه می‌گردد.
دریافت نسخه‌های نهایی رایگان این محصولات:
Microsoft Expression Web 4 
Microsoft Expression Design 4 

خاتمه توسعه مجموعه‌های Expression مایکروسافت
مطالب
خواندنی‌های 29 تیر
مطالب
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 استفاده کنین)