Jag hämtar och uppdaterar min databas genom 2 funktioner som finns i min codebehind. Uppdateringen fungerar över allt annars men inte nu. Jag gissar på att det beror på att jag hämtar ny data i min for sats. Någon som har bra lösning Tror jag var ute på rätt spår, det löste sig om jag skapade ett objekt av min class från codebehind.Uppdatera databasen
Sidan
<code>
DataSet myNewData = GetData("Select * from odds_spel", "odds_spel");
for (int i = 0; i < AntalMatcher; i++)
{
myData = GetData("Select hemmalag, bortalag, spelstopp, odds1, oddsx, odds2 from odds where id = "+ MatchId[i] +"", "match");
DataRow myNewRow = myNewData.Tables["odds_spel"].NewRow();
myNewRow["OddsID"] = oddsID;
myNewRow["Hemmalag"] = myData.Tables["match"].Rows[0]["hemmalag"];
myNewRow["bortalag"] = myData.Tables["match"].Rows[0]["bortalag"];
myNewRow["matchID"] = MatchId[i];
myNewRow["tecken"] = tecken[i];
myNewRow["spelstopp"] = myData.Tables["match"].Rows[0]["spelstopp"];
myNewRow["system"] = Request.Form["system"];
myNewRow["ratt"] = "Ej klart";
myNewRow["insatts"] = Request.Form["insats"];
myNewRow["spelarID"] = HttpContext.Current.Session["Id"];
if(tecken[i] == "1")
myNewRow["odds"] = myData.Tables["match"].Rows[0]["Odds1"];
else if(tecken[i] == "X")
myNewRow["odds"] = myData.Tables["match"].Rows[0]["OddsX"];
else if(tecken[i] == "2")
myNewRow["odds"] = myData.Tables["match"].Rows[0]["Odds2"];
if(Request.Form["kom"].Length > 50)
{
myNewRow["kommentar"] = Request.Form["kom"];
myNewRow["kommentar_OK"] = "ok";
}
else
{
myNewRow["kommentar"] = "-";
myNewRow["kommentar_OK"] = "ej_ok";
}
myNewData.Tables["odds_spel"].Rows.Add(myNewRow);
}
UpdateData(myNewData, "odds_spel");
</code>
Codebehind
<code>
public OleDbDataAdapter myDataAdapter = new OleDbDataAdapter();
public DataSet GetData(string strSQL, string strName)
{
DataSet myDataSet = new DataSet("Tipsligan");
OleDbCommand myCommand = new OleDbCommand();
myCommand.Connection = myConnection;
myCommand.CommandText = strSQL;
myDataAdapter.SelectCommand = myCommand;
try
{
myConnection.Open();
if (myConnection.State == ConnectionState.Open)
{
myDataAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
myDataAdapter.Fill(myDataSet,strName);
myConnection.Close();
}
}
catch (Exception e)
{
}
return myDataSet;
}
public void UpdateData(DataSet myNewDataSet, string strName)
{
try
{
OleDbCommandBuilder myCommandBuilder = new OleDbCommandBuilder(myDataAdapter);
myConnection.Open();
myDataAdapter.Update(myNewDataSet, strName);
myConnection.Close();
}
catch (Exception e)
{
}
}
</code>Sv: Uppdatera databasen