ADO.NET :: Clone Object In Linq To Sql?
Oct 21, 2010
I have two tables in the dbml, Table1 and Table2. Table1 has a Table1ID as primary key and Table2 has Table1ID as foreign key.I have an instance of Table1 called table1,
[Code]....
then I create another instance of Table1 called anotherTable1,
[Code]....
At this point, my intention is to have table1 containing a list of Table2 and anotherTable1 containing 0 Table2. However, both table1.Table2 and anotherTable1.Table2 become 0 count.
View 1 Replies
Similar Messages:
Aug 4, 2010
i have a placeholder and i want to copy all properties to another placeholder.for example
[Code]....
i need the function which return copy of the placeholder which i sent.public object CloneControls(object o)
View 5 Replies
Mar 11, 2011
I am using LINQ and sending a linq object to the view and trying to show it in a textbox like this
<%=Html.TextBox("petname",Model.PetName) %>
But I am getting error, how can I show (PetRecord.PetName) which is my linq entity
View 1 Replies
Mar 12, 2010
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:
[Code]....
View 4 Replies
Mar 9, 2010
txtLastName.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Last_Name.ToString();
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,
ddlSalutation.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Salutation.ToString();
txtLastName.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Last_Name.ToString();
txtFirstName.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).First_Name.ToString();
txtMI.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Middle_Initial.ToString();
txtAddress.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Home_Address.ToString();
txtCity.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).City.ToString();
ddlState.SelectedItem.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).State.ToString();
txtZip.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Zip_Code.ToString();
txtSSNo.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ssn.ToString();
txtMRNo.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Mr_No.ToString();
txtDOB.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Birth_Date.ToString();
RBGender.SelectedItem.Value = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Gender.ToString();
RBMaritalStatus.SelectedItem.Value = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Marital_Status.ToString();
txtHomePhone.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Home_Phone.ToString();
txtWorkPhone.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).WorkPhone.ToString();
txtCellPhone.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).CellPhone.ToString();
ddlSuffix.SelectedItem.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Suffix.ToString();
txtReligion.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Religion.ToString();
txtEmail.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Email.ToString();
txtSSOName.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ssn.ToString();
txtPatientKin.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Patient_Kin.ToString();
txtRelationWithPatient.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Kin_Relation.ToString();
txtPhoneNo.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Kin_Phone.ToString();
ddlPreferredPharmacy.SelectedItem.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Id_Pharmacy.ToString();
txtEmergencyContactName.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Emergency_Contact_Name.ToString();
txtEmergencyContactNumber.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Emergency_Contact_Phone.ToString();
txtRelation.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Kin_Relation.ToString();
txtRace.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Race.ToString();
ddlHowDidPatientFindUs.SelectedItem.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).How_Found.ToString();
txtEmployerName.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Employer_Name.ToString();
txtEmployerOccupation.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Employer_Occupation.ToString();
txtEmployerPhone.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Employer_Cell_Phone.ToString();
txtEmployerAddress.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Employer_Address.ToString();
txtEmployerCity.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Employer_City.ToString();
ddlEmployerState.SelectedItem.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Employer_State.ToString();
txtEmployerZip.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Employer_Zip.ToString();
txtRecordsReleasedTo.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Records_Released_To.ToString();
txtOtherInfo.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Other_Info.ToString();
txtPopupNote.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Popup_e.ToString();
ddlPPlanName.SelectedItem.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Insurance_Name.ToString();
txtPGroupNo.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Group_No.ToString();
txtPIDNo.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Id_No.ToString();
txtPPhone.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Plan_Phone.ToString();
txtPVerifiedWith.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Verified_With.ToString();
txtPVerifiedPhone.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Verified_Phone.ToString();
txtPEffectiveDate.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Effective_Date.ToString();
txtPExtDate.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Ext_Date.ToString();
if (db.usp_ATI_FetchPatientDetails(iPatientID).Count() > 0)
{
txtPGLastName.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Grn_Name.ToString();
txtPGFirstName.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Grn_Name.ToString();
txtPGMI.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Grn_MI.ToString();
txtPGBirthGDate.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Grn_Dob.ToString();
txtPGAddress.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Grn_Address.ToString();
txtPGCity.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Grn_City.ToString();
ddlPGState.SelectedItem.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Grn_State.ToString();
txtPGZip.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Grn_Zip.ToString();
txtPGEmployerFirstName.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Grn_Emp_Fname.ToString();
txtPGEmployerLastName.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Grn_Emp_Lname.ToString();
txtPGEmployerPhone.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Grn_Emp_Phone.ToString();
txtPGEmployerOccupation.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Grn_Emp_Occupation.ToString();
txtPGEmployerAddress.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Grn_Emp_Address.ToString();
txtPGEmployerCity.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Grn_Emp_City.ToString();
ddlPGState.SelectedItem.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Grn_Emp_State.ToString();
txtPGEmployerZip.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Grn_Emp_Zip.ToString();
ddlPGPatientRelationshipToGuarantor.SelectedItem.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Grn_Rel_With_Pat.ToString();
txtPGOtherInsuranceNotes.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Other_Notes.ToString();
txtPGAuthorization.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_Authorization.ToString();
txtPGAob.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(0).Ins_AOB.ToString();
}
if (db.usp_ATI_FetchPatientDetails(iPatientID).Count() > 1)
{
txtSGLastName.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Ins_Grn_Name.ToString();
txtSGFirstName.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Ins_Grn_Name.ToString();
txtSGMI.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Ins_Grn_MI.ToString();
txtSGBirthGDate.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Ins_Grn_Dob.ToString();
txtSGAddress.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Ins_Grn_Address.ToString();
txtSGCity.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Ins_Grn_City.ToString();
ddlSGState.SelectedItem.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Ins_Grn_State.ToString();
txtSGZip.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Ins_Grn_Zip.ToString();
txtSGEmployerFirstName.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Grn_Emp_Fname.ToString();
txtSGEmployerLastName.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Grn_Emp_Lname.ToString();
txtSGEmployerPhone.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Grn_Emp_Phone.ToString();
txtSGEmployerOccupation.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Grn_Emp_Occupation.ToString();
txtSGEmployerAddress.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Grn_Emp_Address.ToString();
txtSGEmployerCity.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Grn_Emp_City.ToString();
ddlSGState.SelectedItem.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Grn_Emp_State.ToString();
txtSGEmployerZip.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Grn_Emp_Zip.ToString();
ddlSGPatientRelationshipToGuarantor.SelectedItem.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Ins_Grn_Rel_With_Pat.ToString();
txtSGOtherInsuranceNotes.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Ins_Other_Notes.ToString();
txtSGAuthorization.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Ins_Authorization.ToString();
txtSGAob.Text = db.usp_ATI_FetchPatientDetails(iPatientID).ElementAt(1).Ins_AOB.ToString();
}
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?
View 5 Replies
May 10, 2010
[code]....
this code give that solution.but if any one of the field have null(example:r.urrQuickLinkRights contain the NULL) then only it will throw error like Object reference not set to an instance of an object.
View 2 Replies
Jul 1, 2010
I have two tables, subscriptions and topics. Each subscription is related to a specific TopicID (PK for topics table). The first query works fine and retrieves the topicID's of all videos that were uploaded today. The problem occurs when I try and then use the results of query1 as a where-in clause for query 2. I keep receiving object reference not set to instance of an object.
Query 1 IQueryable<int> topics = (from t in dataLayer.Videos
where SqlMethods.DateDiffDay(t.DateCreated, DateTime.Today) == 0
select t.TopicID).Distinct(); [code]....
I have looked at some samples around the net and they all seem to be identical to mine.
View 1 Replies
Mar 24, 2010
Is there a simple solution for duplicating table rows in SQL Server as well as all table rows with foreign keys pointing to the cloned table row? I've got a "master" table and a bunch of "child" tables which have a foreign key into the ID of the master table. I need to not only create a perfect copy of the master table, but clone each and every child table referencing the master table. Is there a simpler way to do this than creating a new row in the master table, copying in the information from the row to be cloned, then going through each child table and doing the same with each row pointing to the cloned row in the master table?
I'm using a SQL Server 2005 Database accessed through C# ASP.net MVC 1.0.
View 1 Replies
Jul 14, 2010
how to take clone of an Input Stream. I want to take clone of file uploaded through file upload control. ie clone of fileUpload1.PostedFile.InputStream;
View 1 Replies
Nov 3, 2010
I have a Clone Client feature that allows a user to select a current client, and click submit, and then several fields of data are copied from the selected client, and saved in the sqldb via a stored procedures under a new client number. (Makes it easy for users to add new clients, when client data is similiar)
The problem I run into is when the selected client has multiple rows of data for a field such as the email field. If the client to be cloned has 5 emails in another table named tClientEmails, I need to insert all 5 emails for the new cloned client in tClientEmails. How do I tell SQL to loop thru and insert all 5 rows. Here's my code so far which copies all the data except the email field. Just don't understand how to insert all the emails for the client that are returned. The inserting of the emails has to happen AFTER my sql below, because the new ClientID is returned as an identity parameter.
AS
BEGIN
DECLARE
@ExistingClientID int,
@BillingAddress varchar(200),
@BillingCity varchar(200),
@BillingState varchar(100),
@BillingZipCode varchar(20),
@BillingCountry varchar(200)
[Code]....
View 3 Replies
May 24, 2010
i am using sql express 08 & sql management studio exp 08. I tried to clone a database from another but an error occured. My steps:
[newDatabase] >> right click >> tasks >> restore >> databaseOn general section: from database = [databaseSource] >> backup sets: all checked
On options section: overwrite existing database: checked, recovery state: restore with recoveryClick [ OK ] button The error:
Restore failed for 'MyServerSQLEXPRESS'. (Microsoft.SqlServer.SmoExtended)
Additional information:
System.Data.SqlClient.SqlError: The file 'x:.........databaseSource.mdf' cannot be overwritten. It is being used by database 'databaseSource'. (Microsoft.SqlServer.Smo)
And why sql management studio tried to overwrite the dataSource (not newDatabase)? how to clone a database? I also tried backup databaseSource to file and then restore newDatabase from the file but resulting the same error.
View 3 Replies
Dec 25, 2010
i want add a record to my table(News) in the database School.
so i create a class for news table look like this:
public class News
{
private int _newsid;
private string _datetoshow;
private string _title;
private string _description;
private string _writtenby;
public int NewsID
{
get { return this._newsid; }
set { this._newsid = value; }
}
public string DateToShow.......
pop up is:
'system.Data.Linq.Table <New>' does not contain a definition for add and no extension method 'Add' accepting a first argument of type 'System.Data.linq.Table<New>' could be found (are you missing directive or an assembly reference?)
View 3 Replies
Feb 16, 2010
I have a simple query i.e.
var trips = from t in ctx.Trips
select t;
The problem is that I have an extra property on the Trip object that needs to be assigned, preferably without iterating through the returned IQueryable.
Does anyone know how to set the value during the query? (i.e. select t, t.property = "value")
View 3 Replies
Jan 7, 2010
I have a pretty complex Linq statement with multiple joins, but am having a problem with an orderby statement.
I think I can reduce the question down a bit, but will expand if needed.
First my object has the following properties:
myObject.ID This is a basic Int
myObject.BrandName This is my HashSet<string>.
I need to sort my Object by the BrandName using the lowest or highest value depending on if I am sorting ascending or descending.
View 2 Replies
Feb 5, 2010
I have a table into the database. Table name is NewResults. I have created instance of NewResult called result and fill it with all the infos i need. Now when I try to add i dont have add method in
context.NewResults. -> no Add here. So if i enter context.NewResults.Add(result) error as below is shown:
Error 1 'System.Data.Linq.Table<UDWAutoLinqTry.LinqToSql.NewResult>' does not contain a definition for 'Add' and no extension method 'Add' accepting a first argument of type 'System.Data.Linq.Table<UDWAutoLinqTry.LinqToSql.NewResult>' could be found
(are you missing a using directive or an assembly reference?) C:Documents and SettingsAlek.NikolovskiMy DocumentsVisual Studio 2008ProjectsUDWAutoLinqTryUDWAutoLinqTryCompareCompareHelper.cs 332 32 UDWAutoLinqTry
what am i missing?
I know that i dont have to create add method myself i was googling and i am doing everything as it should but still no luck?
View 3 Replies
Sep 30, 2010
I have a class object which is basically kind of hierarchy and looks like this when I convert that to XML.
[Code]....
So you can see that I have "objectComponent" which is kind of hierarchy and that hierarchy can be upto any level.
Now I need to update <quantity> value where <sku> = "SKU 2", remember this <sku> can be anywhere in hierarchy, so I need to update its <quantity> value where <sku> = "SKU 2".
So my question is how can I update that value using Linq query and specifically, I need that value to be updated in the actual object itself because I need to pass that updated object for furthur process.
In my c# code, there is only one class named "ObjectComponent" and that has all of these properties and "objectBundle" as array and the whole hierarchy starts from there.
how can I update value in this object directly?
View 6 Replies
Mar 16, 2011
I have this code in my controller:
public ActionResult Details(int id)
{
using (var db = new MatchGamingEntities())
[code]...
View 3 Replies
Feb 26, 2011
I have XML file template as:
<Students>
<Student>
<StudentID></StudentID>
<Name></Name>
<Address></Address>
<EmailId></EmailId>
<StudentMobile></StudentMobile>
<ParentName></ParentName>
<ParentMobile></ParentMobile>
<Physics></Physics>
<Chemistry></Chemistry>
<Mathematics></Mathematics>
<Biology></Biology>
<RegistrationDate></RegistrationDate>
</Student>
</Students>
in my asp.net application. I want to insert the student registration entry through my web form. but want to use proper object oriented method. like by create the object as "Student" it will have required property. and want to insert new node with incremental (auto increment) Student ID. I am using c#. how can i achieve this? will Linq is best way to do this?
View 2 Replies
Mar 31, 2010
I know how to deploy and retrieve a single element in LINQ, but how can I do to change all the properties in a list. In the line below, I can only modify a record, I would modify several.
_ListaAcaoMenuInfo.Where(p => p.Id_acao == id).FirstOrDefault().Id_menu = 0;
View 3 Replies
Aug 15, 2010
I have a user control with a datalist. I just want to do some simple binding but keep getting an object reference not set to an instance of an object error. The following is the code, I am sure I am just missing something simple:
Dim dc As Forms.DataClassesDataContext = New Forms.DataClassesDataContext
Dim formQuery = From fq In dc.v_form_questions _
Where fq.FormTypeID = FormTypeID _
[code]...
When I debug, I see values for the formQuery; I am also able to loop through the formQuery and response.write a field out, however every time I try to bind it to a databound control, I get the Object reference not set to an instance of an object error.I initally was using a simple LinqDataSource object, but needed to set the where parameter to the FormTypeID property of this usercontrol. I had a Where condition defined on Page Init, but started getting the object reference error.
View 1 Replies
Aug 11, 2010
I am creating a function to hide all the gridview controls except the control whose name is being passed in the function.
Here this.Controls referes to controls present in the page (At compilation error is thrown although). I want to fetch all the controls of type GridView with Name property not equal to the one passed in the funtion.
Now after getting a collection of GridView. I want to hide all the grids
private void HideGridView(string gridToShow)
{
GridView[] result = from control in this.Controls
where control.GetType() == typeof(GridView) && control.Name !=gridToShow
select control as GridView;
foreach (var control in result)
control.Visible = false;
}
At comile time it shows me this.Control as invalid because it is not a collection.
How can I achieve this on a web application
EDIT:
private void HideGridView(string gridToShow)
{
(from control in this.Controls.OfType<GridView>
where control.Name !=gridToShow
select control).ToList().ForEach(gv=>gv.Visible=false);
}
Here is the code I wrote, shows me an error: GridView is a type but used like a variable (Compile time error).
And at where Invalid Expression Term 'where'
View 2 Replies
Jan 21, 2010
I want to display a Gridview of Patients before I submit them to the database. Is there a way(better way), other then List<Patients>, to bind a list to a GridView.
I am using Linq to SQL and I have a DAL with the Patients table inside. I create a new list of Patients
[Code]....
Now the problem is I can't use a Linqdatasource or Objectdatasource to link to the GridView as no data is in the db yet. The only thing that works is GridView.DataSource = _patients; but I lose all automatic formatting and as far as I can tell it is going to be a pain to format manually. It would seem I should be able to somehow link my object _patients to an one of the datasourses so I would have formatting and all.
View 2 Replies
Apr 9, 2010
I know you are all tired of this Linq-to-Sql questions, but I'm barely starting to use it (never used an ORM before) and I've already find some "ugly" things. I'm pretty used to ASP.NET Webforms old school developing, but I want to leave that behind and learn the new stuff (I've just started to read a ASP.NET MVC book and a .NET 3.5/4.0 one). So here's is one thing I didn't like and I couldn't find a good alternative to it.
In most examples of editing a LINQ object I've seen the object is loaded (hitting the db) at first to fill the current values on the form page. Then, the user modify some fields and when the "Save" button is clicked, the object is loaded for second time and then updated. Here's a simplified example of ScottGu NerdDinner site.
//
// GET: /Dinners/Edit/5
[Authorize]
public ActionResult Edit(int id) {
Dinner dinner = dinnerRepository.GetDinner(id);
return View(new DinnerFormViewModel(dinner));
}
//
// POST: /Dinners/Edit/5
[AcceptVerbs(HttpVerbs.Post), Authorize]
public ActionResult Edit(int id, FormCollection collection) {
Dinner dinner = dinnerRepository.GetDinner(id);
UpdateModel(dinner);
dinnerRepository.Save();
return RedirectToAction("Details", new { id=dinner.DinnerID });
}
As you can see the dinner object is loaded two times for every modification. Unless I'm missing something about LINQ to SQL caching the last queried objects or something like that I don't like getting it twice when it should be retrieved only one time, modified and then comitted back to the database. So again, am I really missing something? Or is it really hitting the database twice (in the example above it won't harm, but there could be cases that getting an object or set of objects could be heavy stuff).
View 3 Replies
Apr 1, 2011
I have a System.Data.Linq.DataContext object and need to know the proper way of closing it out before it goes out of scope in order to prevent the following error when making a bunch of database changes:
Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached.
Can I just call obj.Dispose() or do I need to call obj.Connection.Dispose() or obj.Connection.Close()?
I guess what I want to know is will calling obj.Dispose() end up executing the functionality in obj.Connection.Dispose() and obj.Connection.Close(). The MSDN documentation that I found on these functions does not have this information (at least I didn't see it - I could have mistakenly overlooked it).
View 3 Replies
Sep 23, 2010
For some unknown reason I suddenly am unable to create an object variable for a Linq Data Class. If I create a new project and try the process again with the same database everything works as advertized.The code I am using is Dim db As New RoggDataContext which gives me an error on the object variable "db": Overload resolution failed because no accessibility 'NEW' accepts this number of arguments.I have looked inside every file in the Web Project like the web config to check the connection string, gobal, and designer.vb looking for any errors whit no JOY. I also tried to create a new form and code behind with a button and received the same error.This is mind blowing because as I already stated, I can create a new Web Site and the problem goes away.
View 3 Replies