locked
Design and Tools Advice RRS feed

  • Question

  • A Microsoft moderator suggested this fourm, but please let me know if there is a better one. 

    Good Morning:

    I am looking for the best approach to architecting or designing the project below in .Net.  I need to develop a set of routines that can either be run as a batch under a scheduled task OR by a user via a web form.  Which tool(s) are best (Visual Studio, MVC, WCF, etc.)?  Any good resources you can point me to (sites, books, etc.)?

     

    Here are some high level requirements:

    - We use the .Net framework and would go to 4
    - VB .Net as opposed to C#)
    - Visual Studio 2010 or other dev environment
    - Develop a batch of routines to run (I suspect this will be a class)
    - Run the above batch as scheduled task on a server
    - Run any routine above from a web form (a button for each routine and a progress indicator)

     

    I just found this post which poses a similar question. Answer #1 seems like a good approach, but is that the best approach using the current tools and technologies.

    Thanks again.

    http://stackoverflow.com/questions/3462371/automating-an-asp-net-web-form

     

    Thanks

    Tuesday, February 15, 2011 12:53 PM

All replies

  • "batch of routines".

    What exactly do you mean?

    and

    What interaction is required, when?

    Some alternatives are:

    1) A decoupled windows service which reads entries off a MSMQ and does processing for each.  Writing results to some table or another queue.

    2) A WCF web service.

    3) Batch jobs running on a server EG Sql server and SSIS.

     

    Wednesday, February 16, 2011 8:56 AM
  • Batch is simply a series of routines, run in sequence (i.e., a batch)

    Each routine will query and update SQL Server tables (2005, maybe 2008) and write to logs (currently text files, but possiblym SQL server or the Windows Event Logs).

    Some routines may provide a Crystal report.

    Each routine can be run:

    • Via a web form interface (basically clicking a button to execute the routine)
    • Run all in sequence, overnight, via a scheduled task
    Wednesday, February 16, 2011 1:04 PM
  • To sum up the approach in the link I submitted previously:

    - Code each routine in a stand-alone VB .Net class
    - For the web form interface
         - Develop a web form that simply has a buton to run each
           routine separately.
    - For the scheduled routine
         - Develop a web service to execute the routines in the
           VB .Net class
         - Develop either a Windows Service or Console Application
           to execute the web service and schedule it

    Wednesday, February 16, 2011 1:08 PM
  • Hi,

    Unit of Work design pattern?

    The technical details of what technologies to use depends on how your set up. A WCF service would be good, call it both from a Console application and from the web application. I wouldn't produce the reports through the service unless they are saved to disk and referenced later. The unit of work pattern might help with this because although both the console and the web site will do the same thing they might not do it the same way, the console will do it and produce no report, web site with reports. The different steps might be individual units of work but each approach might wire them up differently.

    Maybe.... food for thought?


    "The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of the imagination." - Fred Brooks
    Wednesday, February 16, 2011 2:03 PM
  • Hi,

    Unit of Work design pattern?

    The technical details of what technologies to use depends on how your set up. A WCF service would be good, call it both from a Console application and from the web application. I wouldn't produce the reports through the service unless they are saved to disk and referenced later. The unit of work pattern might help with this because although both the console and the web site will do the same thing they might not do it the same way, the console will do it and produce no report, web site with reports. The different steps might be individual units of work but each approach might wire them up differently.

    Maybe.... food for thought?


    "The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of the imagination." - Fred Brooks

    Thanks
    Wednesday, February 16, 2011 4:22 PM
  • If you have SQL server SSIS and SSRS are the obvious solution.

    You could run crystal reports from SSIS if you really wanted crystal.

     

    Thursday, February 17, 2011 9:11 PM