none
Best "Back End" for C# web-based data wrangling? RRS feed

  • Question

  • I have a utility i've made in Excel that uses VBA to automate lots of regression testing and calculations, then automates a web browser to log into a site and make sure new data has been published correctly.  I wanted to try making this entirely web-based, partially to potentially improve on it and partially just to have something to work on to learn C#.

    Is there some default most common best way to house data that a web browser will be displaying/working with?  For instance, should I be using SQL or the Excel file as a back end database and just use browser to display resulting numbers after all the math is done?

    I have tried even just a preliminary step to get started by "importing" an Excel spreadsheet and displaying the resulting numbers in a browser but am not seeing a lot of talk about doing this on the internets except for a datagrid view, which doesn't seem to involve identifying the areas or cells for values to use later. 

    Also, What type of project would I choose when using Visual Studio's "New Project" for this?  I assume not a Console App.


    I realize this is all very open ended newb question.  I had a lot less trouble getting started with VBA, it seemed like there was more out there in terms of forums and starting points, perhaps because it is a less robust coding set and there are only so many things people would want to do with it.  Or perhaps I'm going about what I'm trying to do with C# the wrong way and that's why I see so little about it out there.d


    Tuesday, May 14, 2019 5:50 PM

All replies

  • We need more info.  I mean a million lines of data in sql is nothing, but a million lines in excel become hard to handle.  Excel is easier doing large/multiple calculations.  Just my opinion.

    Tuesday, May 14, 2019 6:33 PM
  • Also, What type of project would I choose when using Visual Studio's "New Project" for this?  I assume not a Console App.

    https://www.tutorialsteacher.com/mvc/asp.net-mvc-tutorials

    https://docs.microsoft.com/en-us/aspnet/mvc/overview/older-versions-1/overview/understanding-models-views-and-controllers-cs

    https://www.telerik.com/blogs/create-excel-asp-net-grid

    https://nugetmusthaves.com/Tag/Spreadsheet

    https://www.red-gate.com/simple-talk/dotnet/asp-net/building-an-excel-view-engine-for-asp-net-mvc/

    ASP,NET can be discussed at the ASP.NET forums.

    https://forums.asp.net/

    Tuesday, May 14, 2019 6:47 PM
  • Thanks Mel.  The Excel utility was initially using Access to manipulate/query probably a max of a few hundred thousand records across 10 or so csv tables, which performed some high level testing and then also gave us an Excel sheet of random test cases from that data set.  The random test cases, probably about 25, are the ones we test on the website using automation of IE or Chrome in VBA.  I'm looking to replace all that with one browser-based app, using my zero knowledge of C#. 
    Tuesday, May 14, 2019 6:58 PM
  • thank you very much, DA, I'll be taking a look at these.  I notice these are mostly ASP url's, am I making a mistake trying to do this using C#, or will C# be integrating ASP as part of the solution?  I had thought they were two different programming languages.
    Tuesday, May 14, 2019 6:59 PM
  • The best recommendation for storing data would be SQL-Server (or SQL-Server Express edition) using SSMS (SQL-Server Management Studio) to view and manipulate data.

    Excel is not something that makes sense for this type of work and if you were to go down this path use Open XML for Excel which is not easy to work with but the most efficient. Some of the simpler code.


    Please remember to mark the replies as answers if they help and unmarked them if they provide no help, this will help others who are looking for solutions to the same or similar problem. Contact via my Twitter (Karen Payne) or Facebook (Karen Payne) via my MSDN profile but will not answer coding question on either.

    NuGet BaseConnectionLibrary for database connections.

    StackOverFlow
    profile for Karen Payne on Stack Exchange

    Tuesday, May 14, 2019 7:14 PM
  • thank you very much, DA, I'll be taking a look at these.  I notice these are mostly ASP url's, am I making a mistake trying to do this using C#, or will C# be integrating ASP as part of the solution?  I had thought they were two different programming languages.

    There are two sides to every Web based UI solution. One is the client-side that works with HTML and the usage of a client-side scripting language like JavaScript and Ajax with all being hosted and run at the Web browser. And then there is server-side code running on the Web server such as C# or VB.NET that would do CRUD operations/data persistence with a database or call a WebAPI  as an examples that was initiated by client-side code. The server-side code is acting as a proxy for the client-side browser code. 
    Tuesday, May 14, 2019 7:33 PM