Thursday, 21 August 2014

Completely Free Online Software Architecture Design Tools


Want to create an "architecture diagram" to explain our Software (libraries, Eclipse RCP, modules, features, etc.).
  1. What is the correct name for such diagrams?
  2. What is a good tool to create them? (Except Visio and Enterprise Architect )
ToolsFeatures
Cacoo.com With cacoo, you can
  • save your diagrams as public or private
  • send your diagrams to others
  • if you want, you can make your diagram editable, even without registering to cacoo.com
  • you can add any svg, png and more to cacoo
  • you can make you own stencil and sell it
  • and you can buy new stencils

Gliffy With Gliffy,you can
  • You have great ideas, but how do you bring them to reality? Gliffy helps you organize your thoughts.
  • Create professional diagrams quickly with our intuitive interface - there's virtually no learning curve when using Gliffy.
  • No need to buy expensive, OS-specific desktop software. Collaborate with anyone that has access to a web browser.

Lovelycharts Key features:
Ease of use
Super easy "Drag & Drop" Diagram creation
Automatic symbol switching
"Snappable" drawing grid
Standard drawing tools
Sexyness
Carefully crafted libraries (Flowcharts, sitemaps, people, network, wireframes, BPMN)
Import your own images
Automatic snapping in place
Alignment tools
Customizable connection styles
Efficiency
Web-based, no install
Share & collaborate (Premium only)
View diagram history (Premium only)
Attach comments
Export to JPG, PNG, PDF

Creately With creately,you can
  • 1-click create cuts down 5 actions in traditional diagram software to 1 click action.
  • That is 5 times faster drawing! Add the next shape and the line connecting it, with a single click and drag.
  • Smart shapes for UI Mockups, UML and more
    Connector types that match connected objects
    Real-time Collaboration, wherever you are

Freemind FreeMind is a premier free mind-mapping software written in Java. The recent development has hopefully turned it into high productivity tool. We are proud that the operation and navigation of FreeMind is faster than that of MindManager because of one-click "fold / unfold" and "follow link" operations.
So you want to write a completely new metaphysics? Why don't you use FreeMind? You have a tool at hand that remarkably resembles the tray slips of Robert Pirsig, described in his sequel to Zen and the Art of Motorcycle Maintenance called Lila. Do you want to refactor your essays in a similar way you would refactor software? Or do you want to keep personal knowledge base, which is easy to manage? Why don't you try FreeMind? Do you want to prioritize, know where you are, where you've been and where you are heading, as Stephen Covey would advise you? Have you tried FreeMind to keep track of all the things that are needed for that?

Bouml Bouml features:-
  • it runs under Linux, MacOS X and Windows thanks to Qt
  • it allows to program simultaneously in C++, Java, Php, Python, IDL and MySQL
  • thanks to a full access to the generated forms, you are the master and you decide what must be generated
  • it is extensible, and the external tools (I name them plug-outs because they are executed outside BOUML) may be developed in C++ or Java, using BOUML for their definition as any other program.
  • it is very fast and doesn't require much memory to manage several thousands of classes, see benchmark
d
sparxsystems
  • Comprehensive UML analysis and design tool.
  • Rich modeling for business, software and systems.
  • Full traceability from requirements to deployment.
  • Code engineering in over 10 languages.
  • Scalable, team-based repository.
  • Enterprise frameworks, mind maps, BPMN, more...

pencil
The Pencil add-on for Firefox is pretty good for simple diagrams and GUI sketches.
And if you don't like it as a FF add-on, you can download a standalone version for Linux or windows.

Visual Paradigm In modern software development, requirements capturing is not something you can finish at the outset of a project. Instead, new requirements constantly emerge while previously suggested requirements can change throughout the project. To meet the ever changing expectations, we need a way that can facilitate the continuous capturing and management of users' requirements. User stories is one of the approaches that has been widely adopted by many agile projects.
Written by users (or customer team), user stories describe functionality that are needed by and valuable to users. As an integral part of many agile development processes, user stories offers a quick way in recording users’ requirements without the need to write any detailed requirement documents, or to have any prior consideration of system behaviors.

 Websequence For sequence diagrams, only, try websequencediagrams.com. It's a freemium (free for the basic tasks, paid for advanced features) product, and lets you quickly bang out a diagram without any fussing around with lines and stencils.
Others
  • For modeling or drawing? (Drawing - ArgoUML, free implementations, and Visio)
  • Do you want to formalize your modeling through profiles or meta-models? OCL? (Sparx, RSM, Visual Paradigm)
  • Are you concerned about model portability, XMI support? (GenMyModel, Sparx, Visual Paradigm, Altova)
  • Would you want to generate code stubs or full functioning code?(GenMyModel, Visual Paradigm, Sparx, Altova)
  • If you're looking to get out the door and working on UML without having to learn a complex new tool I would check out Violet UML. I've used it to some pretty great success in the past.
  • PlantUML is an open-source markup-language-to-UML-diagram tool in Java that deserves to be mentioned here. It ranks high on the usability scale because of its intuitive syntax for the various diagrams and diagram components.
  • Dia is a possible choice. It's definitely not the best tool, but it is functional
  • Astah UML (ex-JUDE) is pretty good.
  • Finally  this list of UML tools on Wikipedia might also come in handy.

Framebox

Framebox is a great, free online tool for very simple wireframing. It includes a few drag and drop elements and allows you to share the web page as a unique URL. You can also give your elements titles and descriptions to help explain their function.
  1. Sketch frame using UI units
  2. Save it and get a link to created frame
  3. Send a link to your companion


FusionCharts Free

FusionCharts Free is a Flash charting component that can be used to render data-driven & animated charts for web applications and presentations. It is a cross-browser and cross-platform solution that can be used with ASP.NET, ASP, PHP, JSP, ColdFusion, Ruby on Rails, simple HTML pages or PowerPoint Presentations to deliver interactive and powerful flash charts.

Gliffy

Gliffy.com is a free web-based diagram editor. It enables you to create and share flowcharts, network diagrams, floorplans, user interface designs and other drawings online. Registration is required.
With Gliffy online diagram software, you can easily create professional-looking flowcharts, diagrams, floor plans, technical drawings, and more. Our online diagram editor makes it easier than ever to create great looking drawings.
Gliffy allows you to collaborate with other users by sharing your flowchart in a public workspace. Brainstorming sessions, marketing demos or just a clear plan on how to implement a hardware or software rollout in a large company become quick and easy — there’s no desktop client to install or site registration to think about.


amCharts

AmCharts is a set of Flash charts for your websites and Web-based products. AmCharts can extract data from simple CSV or XML files, or they can read dynamic data generated with PHP, .NET, Java, Ruby on Rails, Perl, ColdFusion, and many other programming languages.
amCharts offers a flexible and easily customizable solution for generating charts “on the fly”. There are 4 sets with predefined Pie & Donut, Line & Area, Column & Bar and Scatter & Bubble. Generated Flash-files are dynamic and can be presented in 2D or 3D. Some flash-charts also have animation effects.
amCharts is linkware which means that you have to place a link to the source if you’d like to use it for free. You can also purchase a single site license for 85 Euros (~$117). We’ve already reviewed amCharts.

amMap

The beginning of amCharts and amMap was in 2004, when the first version of amMap was made.
AmMap is a tool for creating interactive Flash maps. You can use this tool to show locations of your offices, routes of your journeys, create your distributor map, etc. Photos or illustrations can be used as layers and backgrounds of maps, so you can make different presentations, e-learning tools and more.
With amMap, you can:
  • customize every detail of your map – sizes, colors, disable features you don’t need;
  • create multi-level structures;
  • create map charts (heatmaps);
  • load icons or other custom movies or photos on top of your map;
  • use your own custom map textures;
  • draw lines and add text;
  • set the start-up zoom level and position;
  • use it as zoomifyer to display big pictures;
  • control the map with JavaScript (reload data and settings, set and get data and separate parameters, register clicks);
  • export the map as an image.
fig

AnyChart

AnyChart is a flexible Adobe Flash based solution that allows you to create interactive and great looking flash charts and dashboards. It is a cross-browser and cross-platform charting solution intended for everybody who deals with creation of dashboard, reporting, analytics, statistical, financial or any other data visualization solutions.
Attractive data visualization is an essential part of any service or application. Ubiquity and performance of Flash technology makes it, probably, the best solution for charting needs.
From individuals to Fortune 500 companies, we treat our customers with respect and give them all our attention and support. Many well known companies, government organizations, and educational institutions have selected AnyChart for their business needs. Here is a list of some names you may recognize: Oracle, Lockheed Martin, Halliburton, NXP Semiconductors, 3M and Rolex. AnyChart is an advanced Flash based data-visualization solution, allowing everyone to utilize power of animation and ultimate interactivity.
fig

Rich Chart Server for .NET

Rich Chart Server generates captivating dynamic Flash charts from ASP.NET and Windows Forms applications. Use the included authoring tool to visually design a rich chart template which can include stunning animation effects, audio narration, text and image elements, links and tooltips, and any other type of visual customization. Apply the chart template to any available .NET data source or XML document to generate an interactive Flash chart with drill-downs, enabling sophisticated data navigation between multiple charts.
Rich Chart Server uses flexible templates to integrate dynamic content from a variety of data sources:
Rich Chart Server can generate impressive charts from the included professionally designed Chart, Axes, Animations and Layout styles, examples:




fig

Flash Charts Pro

With Flash Charts Pro you can easily install attractive stats on your website and make detailed explanation of all scores that come from different digital sources onto your website or application, presenting it as animated diagrams. All you need to do is upload the core SWF files to the server/include them to your project and configure them via XML data files or you can streamline your data directly to Flash Charts Pro using your favorite scripting language. Flash Charts Pro is easy in use; you do not need to be an advanced programmer for using chart library. It requires no server-based software, there are 2 ways for making it work:
  • You can create a list with all your data and Flash Charts Pro will catch it and display in graphics;
  • The other way is that you can assign variables and stream all your data into the Flash Charts Pro, so that if data constantly changing all reflections you’ll see on your chart.
g

Swiff Chart Generator

Swiff Chart Generator is the server-side solution to dynamically serve eye-catching animated charts from ASP.NET forms, PHP scripts or JSP scripts. Query data from a database, apply your own style template created with the Swiff Chart authoring tool and instantly generates high-impact charts in Adobe Flash format, PNG/JPG format, SVG format and PDF format.
Swiff Chart Generator runs in Microsoft IIS and Apache Web Server for both Windows and UNIX platforms. Swiff Chart Generator works with ASP.NET (C# and Visual Basic), ASP, PHP and JSP, giving you the possibility to access any data source and generate dynamic charts for your web site applications.
fig

Open Flash Chart

Open Flash Chart is a collection of Flash applets that you embed in your web page, and which fetch data from the web server to display. In both cases you get nice little refinements as well as animated pie charts, and with a little fiddling you can customise the way your graph appears by changing its colours, fonts and size. And Open Flash Chart is British, so you’re not only encouraging open source but British open source.
fig

pChart

pChart is a PHP class oriented framework designed to create aliased charts. Most of todays chart libraries have a cost, our project is intended to be free. Data can be retrieved from SQL queries, CSV files, or manually provided. This project is still under development and new features or fix are made every week.
The pChart charting library is providing many ways to reprensent a single or multiple series of data. We’ll try to add screenshots everytime an interesting functionnality is added to the pChart library.
fig

Origramy

Flash graph editor/viewer component. It can be used to create complex graphs presentations, save them and use the same component as graph viewer.
fig

ComponentArt

ComponentArt Charting blows away the competition in terms of overall features, rendering output and ease of use. On top of a great product, the support staff is responsive, knowledgeable and helpful in all areas. This product allowed us to design, develop and deploy a solution that is more usable, manageable and extendable than we thought was possible in zero-footprint chart.
fig

Dundas Chart for .NET

This award-winning component offers the most comprehensive features in the industry, the most complete sample framework, and the best live technical support available. From start to finish, our dedicated team will provide you with the technology you need to make your project successful.
Whether you are implementing charting into internal projects – or building data visualization applications for clients – Dundas Chart offers sophisticated visualization technology to get the most out of your data.
fig

XML/SWF Charts

PHP/SWF Charts offers a simple and dynamic solution for interactive Flash-based charts. Columns, circles, bars and pies can be displayed in 3D. You create an XML source to describe a chart, then pass it to this tool’s flash file to generate the chart. The XML source can be prepared manually, or generated dynamically using any scripting language (PHP, ASP, CFML, Perl, etc.).
The script requires only PHP 4 support; it is free, however all charts are by default linked to the source — unless you’ve purchased a license.
fig

JS Charts

JS Charts is a JavaScript chart generator that requires little or no coding. JS Charts allows you to easily create charts in different templates like bar charts, pie charts or simple line graphs.
The Commercial License cost 149$ allow you get everything inside the JS Charts free pack plus full support for 1 year.
The commercial license allows you to use this JavaScript charts generator legally on the websites that you own or develop under legal partnership with the owner.
g

Friday, 8 August 2014

Azure Mobile Services for ASP.NET Developers and Others Too


Overview
Mobile services is one of the wonderful thing i have seen on azure in 2014. These services are build on top of the existing Azure infrastructure and the service is hosted by a Web Role and data is stored on a SQL Database, they’re just simpler for the developer to create and to interact with.Windows Azure Mobile Services are designed to create highly-functional mobile applications with ease .

Explanation & Implementation
Windows Azure Mobile Services brings together a set of services that enable backend capabilities for your apps and allows you to make rapid app development possible from storage, authenticate users, to push notifications. With SDKs for Windows, Android, iOS, and HTML as well as a powerful and flexible REST API, Mobile Services lets you to build inter connected and deliver a consistent experience across devices.If you will observe below screen shot ,you will find that

Mobile Services Capabilities
 Mobile Services provides the following backend capabilities in Azure to support your apps:
  • Simple provisioning and management of tables for storing application data.
  • Integration with notification services to deliver push notifications to your application.
  • Integration with other cloud services.
  • Service monitoring and logging. 
  • Create a straightforward and secure backed-as-a-service to handle common tasks and get relieved from burden of focusing on the front end that users much bother about.  
  • Integration with Visual Studio. Your favorite IDE now contains a dedicated project template and scaffolders for Mobile Services, and has first-class support for publishing and remote debugging baked in.
Activating the feature
As discussed in my previous article Here that the first thing you’ll need is an Azure subscription:

Creating the service
Now that the feature is enabled, we can start using it from the new Azure Management portal: press the New button and choose Create in the Mobile Services section. In the first step of the wizard you’ll be asked to choose:

  • A name for the service (it will be the first part of the URL, followed by the domain azure-mobile.net (In my case it is, GetAllDevices.azure-mobile.net)

  • This Step is about database where we will be forced to select Create a new SQL database, unless you already have other SQL Azure instances.
  • The region where the service will be hosted: choose the closest region to your country
  • Just click on url or simply browse to URL. You will see below screen which clearly shows that service is up and brow-sable


Azure gives option to choose database while creating mobile services Make sure you fallow below steps:
  • The name of the database.
  • The server where to store the database (use the default option, that is New SQL Database server).
  • Credentials(UserName and password) of the user that will be used to access to the database.
  • The region where the database will be hosted:

This is all about mobile service and we ’re done!. Now service is up and running! If you go to the URL that you’ve chosen in the first step you’ll see a welcome page. This is the only “real” page you’ll see: we have created a service, specifically it’s a standard REST service. What Next ?

Next we’ll see how we will be able to do operations on the database simply by using standard HTTP requests.

Azure Mobile Services provides a great way for mobile developers to add a cloud-hosted backend to their app. The service now has full support for writing your back end logic using ASP.NET Web API. Mobile Services presents an attractive choice for developers building mobile facing APIs with ASP.NET:

 Once the service is created, Go to Quick-start tab and download the starter project for the client platform you wish to target.once downloaded you will find service started project solution ready here


NOTE: Below implementation requires Visual Studio 2013 Update 2 or above.
 
Alternatively, you can create a local project first and create the mobile service later when you want to publish your project.



Either way what you’ll get is a Mobile Services .NET template project. Notice this is simply a Web API project with few additional Nu Get packages used.


Open the TodoItemController.cs controller file and look into  its content. Better,just set a breakpoint inside the GetAllTodoitems() method  and watch how to work with data using Mobile Services .NET support:
Notice we already scaffold all the key CRUD methods for the TodoItem resource.
public class TodoItemController : TableController
{
    protected override void Initialize(HttpControllerContext controllerContext)
    {
        base.Initialize(controllerContext);
        csharp_testContext context = new csharp_testContext();
        DomainManager = new EntityDomainManager(context, Request, Services);
    }

    // GET tables/TodoItem
    public IQueryable GetAllTodoItems()
    {
        return Query();
    }

    // GET tables/TodoItem/48D68C86-6EA6-4C25-AA33-223FC9A27959
    public SingleResult GetTodoItem(string id)
    {
        return Lookup(id);
    }

    // PATCH tables/TodoItem/48D68C86-6EA6-4C25-AA33-223FC9A27959
    public Task PatchTodoItem(string id, Delta patch)
    {
        return UpdateAsync(id, patch);
    }

    // POST tables/TodoItem/48D68C86-6EA6-4C25-AA33-223FC9A27959
    public async Task PostTodoItem(TodoItem item)
    {
        TodoItem current = await InsertAsync(item);
        return CreatedAtRoute("Tables", new { id = current.Id }, current);
    }

    // DELETE tables/TodoItem/48D68C86-6EA6-4C25-AA33-223FC9A27959
    public Task DeleteTodoItem(string id)
    {
        return DeleteAsync(id);
    }
}

Just replace above controller name with DeviceController.CS  and code with operations you want to ... here is what i am doing.. 

public class DeviceController : TableController
{
    protected override void Initialize(HttpControllerContext controllerContext)
    {
        base.Initialize(controllerContext);
        csharp_testContext context = new csharp_testContext();
        DomainManager = new EntityDomainManager(context, Request, Services);
    }

    // GET tables/Device
    public IQueryable GetAllDevices()
    {
        return Query();
    }

    // GET tables/Device/48D68C86-6EA6-4C25-AA33-223FC9A27959
    public SingleResult GetDevice(string id)
    {
        return Lookup(id);
    }

    // PATCH tables/Device/48D68C86-6EA6-4C25-AA33-223FC9A27959
    public Task PatchDevice(string id, Delta patch)
    {
        return UpdateAsync(id, patch);
    }

    // POST tables/Device/48D68C86-6EA6-4C25-AA33-223FC9A27959
    public async Task PostDeviceTodoItem item)
    {
        TodoItem current = await InsertAsync(item);
        return CreatedAtRoute("Tables", new { id = current.Id }, current);
    }

    // DELETE tables/Device/48D68C86-6EA6-4C25-AA33-223FC9A27959
    public Task DeleteDevice(string id)
    {
        return DeleteAsync(id);
    }
}
Notice we already scaffold all the key CRUD methods for the TodoItem resource.

With Mobile Services .NET support you can run Mobile Services backend locally and debug your backend logic. Hit F5, on the default page choose “try it out”. Mobile Services .NET support comes with a help page for your Web API, as you would expect. Click on the GET tables/TodoItem for me GetAllDevices to bring up method documentation, as well as the test client. Click on the “try this out” link and then press “send” to invoke the GetAllDevices() method. As you expect, you will hit the breakpoint you’ve set up earlier.


Once you are done developing your backend API, you can publish your Web API to the Mobile Service. Publishing support is built right into Visual Studio, simply right-click the project and select “Publish”. You can pick an existing mobile service or create a new one right from within Visual Studio, without having to go the Azure portal.

Conclusion:Writing mobile service has become fun a.The service now has full support for writing your back end logic using ASP.NET Web API. Mobile Services presents an attractive choice for developers building mobile facing APIs with ASP.NET especially integration with enterprise level application.



Monday, 4 August 2014

Free Tools for C# reverse engineering

Reverse engineering or decompiling an application can be done easily for .net java applications and is very straight forward but for languages like C++ or C, it's not a straightforward process. The managed code (.NET and Java) world provides a much easier approach, as all source code is compiled into Microsoft Intermediate Language (MSIL). The MSIL is converted to machine code by a just-in-time (JIT) compiler when it is executed.
I worked with lots of reverse engineering tools including reflector but i found JustCompile the best which has large number of features and great user interface.I've used Red gate reflector also but it's no longer free

Free Tool


ILSpy
ILSpy is the open-source .NET assembly browser and decompiler.
Development started after Red Gate announced that the free version of .NET Reflector would cease to exist by end of February 2011.
ILSpy requires the .NET Framework 4.0.


Free .NET Decompiler and Assembly Browser

dotPeek is a free-of-charge .NET decompiler from JetBrains, the makers of ReSharper and more developer productivity tools.


Features?

  1. Decompiling .NET 1.0-4.5 assemblies to C#
  2. Exporting decompiled code to Visual Studio projects
  3. Support for downloading code from source servers and PDB files generation
  4. Quick jump to a type, assembly, symbol, or type member
  5. Effortless navigation to symbol declarations,
    implementations, derived and base symbols, and more
  6. Accurate search for symbol usages
    with advanced presentation of search results
  7. Overview of inheritance chains
  8. Syntax highlighting
  9. Complete keyboard support
  10. dotPeek is free!
FEATURES
Fastest Decompiler
10 times faster than competitors.
Extensible
Extensible
Open API for everyone to create extensions.
[C#5-(WinRT),-APPX]
Easy Assembly Management
Supports .NET 2, 3.5, 4, 4.5, 4.5.1, WinRT Metadata, C#5, APPX and WinMD.
Fast-code-navigation
Fast Code Navigation
Code becomes easily searchable with JustDecompile.
Creates-Visual
Creates Visual Studio Projects
Create a Visual Studio project from a decompiled assembly.
1-Engine-3-Tools
One Engine, Three Tools
JustDecompile integrates with JustCode and JustTrace.
View-Decompiled
View Decompiled Code in Tabs
Switch easily between different methods and assemblies in one JustDecompile instance.
VS-extension
Visual Studio Extension
Decompile referenced assemblies in a Visual Studio project.
Extract-resources
Extract Resources From Assemblies
Save resources from assemblies.
Usage-analysis
Usage Analysis
Bookmark usages in loaded assemblies.
[Style-Reports-to-Your-Needs]
Command Line Support
Export code directly from the command prompt.
[Easy-Assembly]
Integrate With Windows Explorer Context Menu
Here are three more available options, all of which are free:

Dotnet IL Editor (DILE) lets you disassemble and debug .NET code.
dotPeek :dotPeek is a free-of-charge .NET decompiler from JetBrains, the makers of ReSharper and more developer productivity tools.




FEATURES
 Decompiling .NET 1.0-4.5 assemblies to C#
Exporting decompiled code to Visual Studio projects
Support for downloading code from source servers and PDB files generation
Quick jump to a type, assembly, symbol, or type member
Effortless navigation to symbol declarations,
implementations, derived and base symbols, and more
Accurate search for symbol usages
with advanced presentation of search results
Overview of inheritance chains
http://community.sharpdevelop.net/photos/christophwille/images/34590/original.aspxSyntax highlighting
Complete keyboard support
  • ILSpy is an open source assembly browser and decompiler.
ILSpy Features

Assembly browsing
IL Disassembly
Support C# 5.0 "async"
Decompilation to C#
Supports lambdas and 'yield return'
Shows XML documentation
Decompilation to VB
Saving of resources
Save decompiled assembly as .csproj
Search for types/methods/properties (substring)
Hyperlink-based type/method/property navigation
Base/Derived types navigation
Navigation history
BAML to XAML decompiler
Save Assembly as C# Project
Find usage of field/method
Extensible via plugins (MEF)
Assembly Lists

MSIL Disassembler: The MSIL Disassembler is a companion tool to the MSIL Assembler (Ilasm.exe). Ildasm.exe takes a portable executable (PE) file that contains Microsoft intermediate language (MSIL) code and creates a text file suitable as input to Ilasm.exe.
ILSpy
: ILSpy is the open-source .NET assembly browser and decompiler from the SharpDevelop team.
.NET Reflector: NET Reflector is a commercial assembly browser for the Microsoft .NET platform that can be used to explore, analyze, decompile, and debug the contents of any .NET assembly. Used to be free.
Dotnet IL Editor (a disassembler): Dotnet IL Editor (DILE) allows disassembling and debugging .NET 1.0/1.1/2.0/3.0/3.5 applications without source code or .pdb files. It can debug even itself or the assemblies of the .NET Framework on IL level.
IL.View – IL.View is an open-source Silverlight .NET assembly browser and decompiler.
 Common Compiler Infrastructure (CCI): CCI consists of two components, CCI Metadata and CCI Code, which represent a .NET portable executable (PE) or debug file as an object model. Applications can then use the object model to analyze or modify the contents of the file.
Mono Cecil: Cecil is a library written by Jb Evain to generate and inspect programs and libraries in the ECMA CIL format. It has full support for generics, and support some debugging symbol forma
 Assembly Analyzer: Assembly Analyzer is a tool for analyzing the metadata and resources within a .NET assembly, as well as disassembling non-CLI executable files.  The tool allows you to view dependencies of assemblies and members.  It uses the Mirror library (source included) for loading assembly metadata and other Portable Executable-format files.
Salamander: Salamander is a commercial .NET decompiler that converts executable files (.EXE or .DLL) from Intermediate Language (IL, MSIL, CIL) binary format to high-level source codes, such as C#, managed C++, Visual Basic.NET, etc. For more than 8,000 classes that have been tested, Salamander always produces equivalent and recompilable codes that are remarkably close to the original source codes Dis#: commercial. Dis# (DisSharp) is a powerful tool to reverse engineer MSIL code into a human readable one.
Spices.NET Decompiler: Spices.Net Decompiler is a commercial tool that offers a productivity package for .NET software developers that is exceptional in the industry for ease of use and top of the range performance.
Decompiler.NET: Decompiler.NET is a commercially available combination of Decompiler, Obfuscator, Language Translator, and Refactoring Tool for Microsoft .NET managed applications.

How to Build a Full-Stack Web App with Blazor

  Blazor Stack Overview Important Points: Blazor stack gives you options to create Web Applications without writing JavaScript (doesn't ...