Ich sah ein paar EF-Tutorials, aber ich konnte ein paar Dinge nicht herausfinden. Ich arbeite derzeit in einem .net-Testprojekt, das ADO verwendet, um mit der SQL Server-Datenbank zu interagieren. Ich muss jetzt den ADO-Teil zum Entity-Framework übergeben. Ich arbeite derzeit mit 3 Schichten, Business, Objekt und DataAcess.ASP/C# von ADO zu Entity Framework
In DA habe ich die folgende Abfrage die Employee-Tabelle aus meiner Website zu aktualisieren. Es funktioniert, aber ich möchte dies mit Linq an Entity Framework weitergeben. Ich habe ein paar mehr Fälle wie diese mit einfügen und auswählen, aber ich bin sicher, dass ich in der Lage sein werde, sie herauszufinden, sobald ich das sortiere.
Hinweis: Ich habe meine DataAccess-Klasse bereits über Entity-Framework mit der Datenbank verbunden, und das Entitätslistenobjekt heißt ListEntities.
SqlConnection conn = new SqlConnection();
try
{
SqlCommand comm;
string connectionString = ConfigurationManager.ConnectionStrings["Test"].ConnectionString;
conn = new SqlConnection(connectionString);
comm = new SqlCommand("UPDATE Employee SET [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected] WHERE [email protected]", conn);
comm.Parameters.Add("@Name",
System.Data.SqlDbType.VarChar, 70);
comm.Parameters["@Name"].Value = User.Name;
comm.Parameters.Add("@Lname",
System.Data.SqlDbType.VarChar, 70);
comm.Parameters["@Lname"].Value = User.Lname;
comm.Parameters.Add("@Age",
System.Data.SqlDbType.Int);
comm.Parameters["@Age"].Value = User.Age;
comm.Parameters.Add("@Email",
System.Data.SqlDbType.NVarChar, 70);
comm.Parameters["@Email"].Value = User.Email;
comm.Parameters.Add("@AYear",
System.Data.SqlDbType.Int);
comm.Parameters["@Year"].Value = User.Year;
comm.Parameters.Add("@ColorID",
System.Data.SqlDbType.Int);
comm.Parameters["@ColorID"].Value = User.ColorID;
comm.Parameters.Add("@AvatarID",
System.Data.SqlDbType.Int);
comm.Parameters["@AvatarID"].Value = User.AvatarID;
comm.Parameters.Add("@EmployeeID",
System.Data.SqlDbType.Int);
comm.Parameters["@EmployeeID"].Value = User.UserID;
conn.Open();
comm.ExecuteNonQuery();
}
catch (Exception ex)
{
throw ex;
}
finally
{
conn.Close();
}
Fangen Sie keine Ausnahme, wenn Sie es nur erneut versuchen. Das hat keinen Sinn. Und definitiv nicht 'werfen Sie ex;' auf einer gefangenen Ausnahme, verlieren Sie die Stapelspur. Einfach 'throw;'. – mason
FYI Sie können diese Zeilen einzeln eingeben: 'comm.Parameters.Add (" @ Name ", System.Data.SqlDbType.VarChar, 70) .Wert = User.Name;', um eine Sammlungssuche zu speichern. –
Nicht wirklich, was ich gefragt habe, aber gut zu wissen. –