Generic user interface for editing C# application configuration files - c#

I am developing some little tools in C#, basically they just work fine as a console application with some configuration values read from the exe configuration file (System.Configuration).
But editing an XML file is not what you could call a great User Experience, so I am searching for a tool/library that could create a simple configuration screen in WPF or Winforms for the user to change these values.
This should be possible to automate for many simple cases. I did not find any existing tools that could solve this problem. Does anyone know tools that create UIs for configuration files or any tools that could speed up the creation of such a tool?
It should not be a problem to create this in pure WPF, but any tool to speed up the process is welcome.

ASphere is a freeware XML configuration editor.

Related

Code generate new C# project

At the moment I am using C# T4 code generation, but as much as I know it is limited to a class file or other file type generation. I need to generate multiple projects in one solution is it possible to accomplish with T4 templates or there is other technique do to this?
Templates in Visual Studio allow for multiple projects / files templates so you can definitely create this.
The way to create them is simply to setup the skeleton you need for the project, then replace the content of the files in the directory with specific values that will be replaced when the template has the information needed.
I had similar experience.
I developed a whole set of T4 templates to generate a solution. But once you want change code in multiple files, some code may mess up.
So I wrote a code generator based on database schema to generate a VS solution with DAL(Linq To SQL, Entity Framework), BLL, WCF, and UI Applications MVC, WPF, Windows PHone, Windows App Store, Silverlight.
You can goto https://github.com/ntierontime/Log4Net to see whether it meets your architecture requirements, or not. And send me an email with the .dbml(Linq To Sql Classes).

Add languages at runtime

I have a multi-language windows application that uses standard .net localization in resx files.
Now I have a request to add a possibility for user to create his own language files that are not originally supported and add them to the application without recompiling it.
What's the best approach to achieve this?
I'm considering moving the languages to database and then crating a second tool that'll add translations to the database, but would rather keep the current approach, if it's possible to add resx files dynamically.
This is exactly why I don’t use .NET localization but wrote my own.
I store the translations in files separate from the EXE, have a Windows-Forms-based GUI for translation that I can embed in any application (and working on a WPF clone of it), and allow users to switch languages without restarting the application.
I don’t get why anyone would want it any different and why Microsoft created such a bad and limited system.
Unfortunately, I cannot publish my system right now, but I’m hoping I’ll be able to soon.
One option you can use is keep the translations in an XML file. This way, the user can just drop his own XML file into the folder where the translation exists.
You could write the translations to .resx file and just add the location of that file to the database and then when you want to translate some label just go to the database to see where that file is and then read from it. I'm not sure though how it would fit with a localisation lib...

Graphical application.config editor?

I am wondering if .net has some sort of inbuilt gui for editing application.config files.
From googling around it seems that they exist but are designed to be run from visual studio.
What I want to do is to allow admins of the software I am writing to be able to customise the application config from within the software at a customers site.
Could someone advise me if this is possible?
At the minute I thinking I will have to wite my own code to parse the config files to generate the Gui.
Create your own form whcih takes application.config values from user and update that in the application.config

Add-ons to Log4Net

I am currently dumping all my logging into Log4Net text files, and they are difficult to read. Is there a nice log4net processor (preferably a class I can add to my ASP.NET app, so that I can view logs remotely) that will lay out the log4net dump in a nice, easy to read and search format?
There is an Apache tool for log4j called Chainsaw which can apparently be used with log4net log files (instructions here).
There is also a commercial tool called Log4Net Dashboard which can also do it.
Neither of these are web-based though.
There was a tool called log4xsl a while ago. If you configured log4net to output XML log files, you could apply the log4xsl XSLT stylesheet to render it nicely in a web browser. The project seems defunct though, but you could try to find it somewhere (here may be a good starting point).
Log2Console can read log files, but you can also use it to monitor "live" events throught .Net Remoting or UDP Appenders. There is also a commercial tool "Log4View" that can to the same.
In your case logging to a database would make the most sense though. You can access it easily remotely and filtering is certainly no problem. Building a ASP.Net page with a data grid would be done very quickly so that you do not need to access the database directly.

How do we can create the attractive/customised installer for our .net application?

I am usually using Setup and Deployment template provided by visual studio. Is it possible to enhance default forms provided in that. or is there anything else to create the customized and attractive installer.
Aim :
1. I like to ask the user for pre-requested information to initialize the application during the installation process.
2. I like to prevent app.config by toching from user.
3. I like verify the collect the connection information during installation as well as like to verify that by connecting with given data source.
please provide good direction if i am in wrong path. - thanks
Wix is what you need
Yes, you can do all these things with the built in setup project in Visual Studio.
You can add a new user interface dialog box with text boxes, check boxes etc.
Write a custom action the handles these values and store them in some configuration file.
The app.config shouldn't be touched by the user anyway. If you are using the built in configuration classes in .NET, the user settings will be stored in a separated file in the user's application data folders.
As in #1, you can use custom actions for this kind of functionality.
The built in setup project has very little/no means of customizing the look and feel. For that you will have to use either 3rd party components/installers or use WiX and design setup screens/dialogs by yourself.
I use Inno Setup (http://www.innosetup.com/isinfo.php), its free and very configurable, it can also run your own applications as helpers to do very specific tasks.
Why not try other install systems like InstallShield or, if you really want to customize go for NSIS (Nullsoft Scriptable Install System)? NSIS Download

Categories