Rules to Better .NET Projects
- .NET - Do you set multiple startup projects?
- Do you have a consistent .NET solution structure?
- Do you name your startup form consistently?
- Do you use Solution Folders to Neatly Structure your Solution?
- Do you keep clean on Imports of Project Property?
- Do you add the necessary code so you can always sync the web.config file?
- Do you use the designer for all visual elements?
- Do you refer to images the correct way in ASP .NET?
- Do you use Microsoft.VisualBasic.dll for Visual Basic.NET projects?
- Do you avoid Microsoft.VisualBasic.Compatibility.dll for Visual Basic.NET projects?
- Do you publish your components to Source Safe?
- Do you use MS Project integration with TFS 2012?
- Do you use the SharePoint portal in VSTS 2012?
- Do you keep your Assembly Version Consistent?
- Do you use configuration management application block?
- Do you have a resetdefault() function in your configuration management application block?
- Do you know how to use Connection Strings?
- Do you version your .xml files?
- Do you use TreeView control instead of XML control?
- Are your customizable and non-customizable settings in different files?
- Do you secure your web services using WCF over WSE3 and SSL?
- Do you let the adapter handle the connection for you?
- Do you use one class per file?
- Do you use a DataAdapter to insert rows into your database?
- Do you optimize your EF Core queries?
- Do you put all images in the \images folder?
- Do you keep \images folder image only?
- Do you put your setup file in your a \setup folder?
- Do you deploy your applications correctly?
- Do you distribute a product in Release mode?
- Do you use more meaningful names than Hungarian short form?
- Do you know how to rename files that under SourceSafe control?
- Do you profile your code when optimising performance?
- Do you Add SSW Code Auditor, NUnit and Microsoft FxCop project files to your Solution
- Do you know what files not to put into VSS?
- Do you use resource file for storing your static script?
- Do you know changes on Datetime in .NET 2.0 and .NET 1.1/1.0?
- Do you know how to use Connection Strings?
- Do you avoid using duplicate connection string in web.config?
- Do you use Windows Integrated Authentication connection string in web.config?
- Do you store your secrets securely?
- Do you share your developer secrets securely?
- Do you highlight strings in your code editor?
- Do you use PowerShell to run batch files in Visual Studio?
- Project setup - Do you make project setup as easy as possible?
- Do you always prefix SQL stored procedure names with the owner in ADO.NET code?
- Do you always make file paths @-quoted?
- Do you always use Option Explicit?
- Do you use Asynchronous method and CallBack when invoke web method?
- Do You Create Different App.Config for Different Environment?
- Do you make your projects regenerated easily?
- Do you use comments not exclusion files when you ignore a Code Analysis rule?
- C#/VB.NET Configuration - Do you know not to use debug compilation in production applications?
- Do you know BAK files must not exist?
- Do you know zz'ed files must not exist in Source Control?
- Do you create your own Process Template to fit into your environment?
- Do you know the right methodology to choose (new project in VS 2012)?
- Do you use TFS 2012 instead of TFS 2010?
- Do you always say "Option Strict On"?
- Do you keep your nuget packages small?
- Do you know how to track down permission problems?
- Do you know the best criteria for evaluating 3rd party software?
- Do you know the best sample applications?
- Do you reference "most" .dlls by Project?
- Do you reference "very calm/stable" .dlls by Assembly?
- Do you turn Edit and Continue OFF?
- Do you use a Project Portal for your team and client?
- Do you use Slack as part of your DevOps?
- Do you use Trace.Fail or set AssertUIEnabled="true" in your web.config?
- Project setup - Do you containerize your dev environment?
- Project setup - Do you use Docker to containerize your SQL Server environment?
- Do you use Minimal APIs over Controllers?
- Do you use Directory.Build.Props to simplify multi-project build configurations?
- Do you use LoggerMessage in .NET?