DataSource Controls :: SqlDateTime Overflow Using Linq To SQL
May 17, 2010
I'm new to ASP.net 3.5 and I'm trying to create a FormView based on Linq to SQL. My underlying table has several date fields that are optional and typically are not set. When I try to insert or update records, I get the following message.
SqlTypeException: SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM
I got the same message when using the SQLDataSource with this data, but I was able to create functions that tested the value of the datefield against the datetime.minvalue and if it was the minvalue, replace it with null.I can't figure out where to put the functions and how to reference the value of the date field. below is what I have
-- CURRENT FUNCTION FOR LINQ TO SQL
Public Shared Function MakeDateField(ByVal pasDate As String) As Nullable(Of SqlDateTime)
If IsDate(pasDate) Then
Try [code].....
How can I submit null dates when using Linq to SQL automatic updates and inserts?
I'm new to ASP.net 3.5 and I'm trying to develop a web site using ObjDataSources and LinQ to SQL. My tables often have optional date fields which have no value, e.g. Employee Termination Date. I was able to create a function when I used SQL DataSources that I wrapped around the parameters to replace the 12:00:00am with null and this worked great.
Now I'm trying to use ObjDataSources and LinqToSQL and its automatic updating and inserting. When I do, I get this horrible exception again. I have tried using my functions in the ItemUpdated event,
-- CURRENT FUNCTION FOR LINQ TO SQL
Public Shared Function MakeDateField(ByVal pasDate As String) As Nullable(Of SqlDateTime)
I am developing a website in asp.net mvc using Entity Framework. I have created some POCO (Plan old class objects) to represent the database entities.These POCO classes defines some entities with datetime type.
Now I have a view which contains a telerik datepicker. This view inherits the model which contains a nullable datetime object say searchDate.
When I fire a query to compain these searchDate with dates stored in database its throwing following error
"SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM."
following is the linq query i am using
[Code]....
The date format stored in database is "2011-01-31 00:00:00.000"
and the format comes from UI is "03-03-2011 00:00:00".
I am using SQL Server 2008 R2 and .net 4.0 framework.
I have a MS SQL Srver 2005 Database, that has a table with a DatTime column. The DateTime column is of smalldatetime type. The date and time is auto generated by the DB using getdate() function. This is because its a LOG recording table, so logs are just inserted and date-time is generated by the db.
When creating a log and saving into the DB through Entity Framework, using LINQ query, it causes an error while saving saying:
"SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM."
upon investigating using breakpoints i have noticed, when Entity Framework tries to save the Log object, the date set by Entity Framework is set to:
01/01/0001 00:00:00
I guess this is why error is coming up. Is there any way to resolve this?
I am writing a plugin to help with a current ERP system we have that I am not allowed to modify the data structure at all. The table I am dealing with has over 100 columns and I am wanting to set my linq object propertychanged event and submitchanges or do I really have list out each property and set it equal to the new one?Below is an example of what I am trying to do:
Like that I have large number of controls on my form. I have dought, if I assigned like this, db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Last_Name.ToString(); to every control, then I have set of controls like,
My question is that, for each control the Stored Procedure called or not? If it is yes then it is time consuming and I need to use LINQ to DataSet or LINQ to Object rather than to call SP for each control. What is difference between LINQ to DataSet and LINQ to Object?
public IEnumerable<Customer> GetCustomers() { Table<Customer> custObject = context.Customers; IEnumerable<Customer> filteredCustList = from customer in custObject select customer; filteredCustList; } GridView2.DataSource = utilLinqClass.GetCustomers(); GridView2.DataBind();
(no errors at build time or at compile time) Error I am getting is: An attempt to attach an auto-named database for file App_Dataaspnetdb.mdf failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share.
I am trying to use a linq query to create a report and I am unclear on how to traverse the linq dataquery in my case. Inside my for each loop, i have a do while loop. The way it is written below, the do while loop is infinite because I never skip to the next itm in oneSchedule. Placing a Next inside the do while loop causes a syntax error. So what is the correct method for moving to the next itm within the loop?????
select * from MyTable select "MonthName"= case when datepart(month,date1) =1 then 'January' when datepart(month,date1) =2 then 'February' end , count(*) as CountByMonth from venkat group by datepart(month,date1)
I'm trying to "move" a LinqDataSource control to code behind to better control the query parameters. Problem I'm having is how does the "It" keyword translate to Linq To SQL syntax (not sure if I'm getting the terminology right here, but I think you get my meaning).
If I have an ID, I would like to retrieve the next item that also has the same category as the item ID I have. So, for example, if I have ID=2, I would like to return the item with ID=4 (as item ID=3 has a different category).
Whenever you want to implement Linq to SQL on a project there is inevitably a battle between the DBA and the developers over it.
From the developer standpoint, Linq to SQL eliminates the need to manually write stored procs, ADO.NET data access classes, business object classes, and datatable -> business object conversion classes. This makes development a breeze and eliminates a lot of the traditional layers that you'd normally have to code.
Alternately, from a DBA perspective there are some issues. One is that a lot of DBA's like to do security at the sproc level, and this level would be gone. Another issue is that if the DBA wanted to mimic some sql functionality that the application is doing, possibly for a scripted action, they wouldn't be able to simply call the sproc that the application is using. Also they wouldn't be able to tell which columns are actively being used and which are not, as it'd be C# code specifying which columns are returned rather than sprocs. Lastly, if something needed to be changed structurally, it'd require a recompile and redeploy of the entire app rather than a simple sql script of 2 being deployed.
There are valid points on both ends, so I'm wondering what experiences you all have with this and what sort of compromises you made. In my situation, I'm the developer and I'm trying to figure out a compromise I can make with the DBA so we both give a little rather than one of us having to completely bend over. The obvious compromise to me is using sprocs from within Linq to SQL, but it adds another layer of development and the sprocs have to coded a certain way to play nice with Linq to SQL.
SELECT * FROM dc.accounts t1 INNER JOIN dc.profiles t2 ON t1.AccountID = t2.AccountID WHERE EXISTS ( SELECT * FROM dc.profileblocks t3 WHERE t3.AccountID = '14' and t1.AccountID = t3.AccountID )
I'm close to the solution I see where I am going wrong just unsure how to approach it. I want to be able to take a tables worth of data (via DataClasses) and put it in a CSV to download.
A LINQ to SQL query is performed (basically a 'Select All' from tbl_Newsletter), takes those results and the idea is to feed those results, one by one through the foreach which, inside it, is the CSV's definition e.g. List.Add(etc) as you'll see. After which the CSVExporter method is called - which works, as I can Download it, it just wont display any results.
C#: [Code]....
To which I get: Compiler Error Message: CS1729: 'Newsletter' does not contain a constructor that takes '2' arguments
with Newsletter obj = Newsletter.GetAll(); in place of Newsletter obj = new Newsletter();
I get: Compiler Error Message: CS0029: Cannot implicitly convert type 'System.Collections.Generic.List<Newsletter>' to 'Newsletter'