How to Choose the Best Third Party .NET Control Suite
The Microsoft .NET and .NET Framework are excellent platforms for developing business software. Technically, “anything” is possible with .NET alone, but as your team quickly progresses through the development process, you will likely hit a roadblock. You may need to manage events on a calendar, export data to Excel, visualize data in a chart, or float and dock tabs within your application.
These are just some examples of advanced functionality that would take a single developer, or even a small team, a significant amount of time to develop from scratch. This is where third-party libraries are valuable solutions because their cost is typically less than the cost of in-house resources.
When the standard .NET toolset does not meet your needs, you have the option of purchasing a third-party component suite. This article discusses the five steps you need to take and the things to consider while choosing the best suite for your application.
5 Steps to Choosing a .NET Component Suite
Deliver enterprise-level applications faster with the most flexible .NET UI controls. Download ComponentOne Today!
The following five steps will help you and your company decide which component suite is best.
- Understand your requirements
- Discover and evaluate component suites
- Evaluate other factors like cost, support, documentation
- Choose and build a prototype
- Make the final decision
Understand Your Requirements
Before you can choose the best control suite, you will need to understand your requirements so the evaluation process will be quick and smooth. Start by compiling a list or spreadsheet of requirements for your .NET application. This will include the limitations or roadblocks that you hit with the standard toolkit, plus anything else that you would like to have. You should be pretty specific with each requirement because you will find that multiple control suites have similar features. Some example requirements include grouping panel for datagrid, drag-and-drop support, Excel export, load from XML, display status icons in data grid row headers, mapping, and printing a report.
Discover and Evaluate Component Suites
A component suite is a collection of controls and components, normally grouped by a specific .NET platform (i.e., WinForms, ASP.NET, WPF, Blazor, etc.). Popular third-party component suites are offered by various companies such as GrapeCity, DevExpress, Telerik & SyncFusion. You may begin with a web search for your specific requirements, or talk to professionals in the industry, and start to build a list of component suites that likely solve your problem.
Then begin the evaluation process for each component suite. Use your requirements list or spreadsheet to keep track of which component suite supports each requirement.
The evaluation process should begin with browsing the company’s website and online demos. Typically the website content and demos showcase the same information; one is just more hands-on. Depending on your requirements, you may need to go even deeper into the control’s documentation. If necessary, you can even reach out to the company by email or forums to ask if your required feature is supported. All of these companies are happy to help you best understand their products.
Evaluate Cost and Other Factors
At this point, you’ve already determined that purchasing a control suite is more cost-effective than building one yourself. Before you waste time further evaluating and prototyping, you may be able to eliminate a contender just on pricing and licensing. It’s a relatively simple task. Most third-party control vendors offer competitive pricing and licensing models with royalty-free distribution so that they may seem the same. But they actually differ when you get into the specifics. Questions to ask include:
- Are there discounts for buying multiple licenses?
- Do I need to purchase additional licenses to build machines and servers?
- Can I use the components within a user control or plugin?
- If my developer has two computers, do I need to buy them two licenses?
- What is the renewal price each year?
Most companies will include free licenses for additional machines and offer you discounts when purchasing for a team of 5 or more. You may not easily find this information on their website, so you may need to contact them. You can do this quite easily in a live web chat in most cases. Comparing the cost of each control suite is just as important as comparing features, especially if more than one offers the controls and features you need. Of course, you also want to show your boss that you saved some money on your choice. In some cases, a control suite may meet your requirements above and beyond the others; that price becomes irrelevant.
In addition to cost, you should also consider other factors from each company that add value to the control suite. These include, but are not limited to, support, scalability documentation, and reliability.
Support
What will you do if you need help or find a bug? Consider how quickly companies can respond to support inquiries. Some companies charge more for high-priority support, but most will offer free online support with up to 3 or 5 business days for responses. Also, you need to know how often the company releases patches or updates to its control suite. Most third-party control vendors do not release updates frequently, and you may have to wait several months before getting a fix!
Scalability
Purchasing a component suite can be an investment, as the cost to remove or replace it becomes expensive. So it’s important to think about the long-term future for your application. You should ensure that your product will grow with technology changes or the opposite; if you don’t plan to update it often, you may need long-term support for older technologies.
Questions to ask include:
- Will the control suite scale to multiple platforms and devices?
- Is the suite built upon industry standards, ensuring longevity (i.e., .NET 6, Entity Framework, Azure)?
- Does the company have a reputation of supporting older versions of technologies (i.e., ASP.NET Web Forms, .NET 2.0, .NET 4.0, ActiveX)?
Documentation
A great .NET component suite needs great documentation and resources to help you along the way. Let’s face it; you can’t build your entire application during the trial phase, so you won’t know every hurdle before you face it with no turning back. In a later step, when you test or build a prototype, you will naturally test out the documentation. After you complete a typical “How do I do this” query, ask yourself how easy it was to find the information. Also, remember that most companies offer a community knowledge base or forum where you should also search for help. With a good community, you have fellow developers asking the same questions you will have.
Reliability
It almost goes without saying that you should choose a trustworthy company that is known for delivering quality products and one that will be around for the duration of your development lifespan. Newer/smaller companies can be a greater risk to purchase from. The best way to gauge that is to see how long they have been in business providing the services and products you are about to purchase. Software components often need continuous updates to support the latest operating systems and browsers. You’ll want to ensure that the component suite won’t go belly up and force you to remove and replace everything.
Choose and Build a Prototype
Based on your evaluation, it’s time to narrow the field and make an initial choice of which 3rd party component suite is best for your application. Most third-party control vendors offer you a 30-day trial. Use this time to not only evaluate demos and documentation but start some hands-on testing. It’s best to build a prototype to get the clearest understanding of how your final application will accept the components. Due to the time-saving nature of 3rd party components, 30 days is usually long enough to get enough testing. Most companies will allow you to extend the trial if necessary.
Tips on Building a Prototype
You should try to use your company’s real data or at least simulate how you will be loading the data into the UI controls. Build a prototype that includes each of your biggest required features. Most third-party controls make this task easy (i.e., just set a few properties), but some may require more work. Just because you see the feature in a beautiful demo does not mean it was easy to implement. For instance, it would be bad to find out too late in the process that the grouping feature only works if your data source is of a specific type of object when you’re planning on using another. That’s why it’s important to prototype your biggest requirements before you commit.
If the prototype and testing phase fails, then you need to go back and choose another control suite. If the prototype was a success, you should feel confident committing to that component suite.
Conclusion - Make the Final Decision
By this point, the .NET component suite that best fits your needs should be more apparent, and you should feel confident in committing to your choice. Keep in mind that purchasing a third-party component suite can be an investment because the cost to remove or replace it is expensive. It’s a big decision that needs the right amount of time and resources devoted to making the best choice. Sometimes companies get trapped into one suite they later realize did not meet their full expectations.
Hopefully, the steps described in this article will help you and your company with this process.
Deliver enterprise-level applications faster with the most flexible .NET UI controls. Download ComponentOne Today!
About the Author
I have over ten years of experience working with .NET third party controls, specifically ComponentOne controls from GrapeCity (so I’m a bit partial). Here are the answers to some of the earlier questions for ComponentOne:
- Are there discounts for buying multiple licenses? - Yes, five or more.
- Do I need to purchase additional licenses for build machines and servers? - No, however, we do have special pipeline licensing for dynamic build agents.
- Can I use the components within a user control or plugin? - Yes, see user control licensing in our documentation.
- If my developer has two computers, do I need to buy them two licenses? - No, a single developer can activate up to 3 machines
- What is the renewal price each year? - 50% of the list price.
- How long does it take to get issues addressed? - Our standard support answers within three business days. We also have platinum support for 24-hour response and community forums for casual questions.
ComponentOne’s major strong suit is our focus on quality over quantity, sample-focused learning resources, and our long-term support strategy. We have three major releases a year with frequent maintenance releases in between, so customers do not have to wait very long to obtain a fixed issue. We also tend to support frameworks longer than Microsoft, making us a favorite for companies maintaining old applications.