Background:
I have developed a class library project that contains business logic classes and data access logic classes.
I am using a Microsoft SQL Server 2012 database (express) to save my data.
The business logic classes have save methods that perform validation and any necessary pre-save logic. Once the validation and pre-saving is successful, the save methods use the data access layer methods to create a transaction with a new connection to the database and uses DataAdapters update my database.
I have been using these classes in a WPF project and everything works 100% of the time.
I am now working on an ASP.NET MVC 3 project to create a web version of the same application. I am using the same class library in my ASP.NET application as I am in the WPF application.
I am using VB.NET for implementation in all of my projects.
Problem:
One of my classes is not updating the database with data that has been changed from my ASP.NET application.
I have stepped through the save logic from the UI layer all the way down through the data access layer and everything is properly set and the transaction commit does not throw any exceptions or indicate that anything went wrong BUT the information is not set in the database!
I have made sure that the rows are modified with the data, that the DataAdapter Update method is called, that the transaction commit method is called... everything looks fine and no errors are thrown. I tried other classes used by the ASP.NET application and found that their saves were being committed to the database perfectly fine (these classes use the same design for saving data as the problematic class does). I also tried calling the save method on the problematic classes from my WPF application and everything works fine (the commit actually commits the data to the database).
I am completely at a loss right now and have no idea how to fix my problem.
Please give me some ideas about how to debug this issue!
I am not going to post code because it is way too much to ask people to look at it. I am simply looking for suggestions on how to debug this and any suggestions on what to check if someone else has experienced this problem.