Я занимаюсь разработкой приложения для устройств без монитора, так как у меня есть два приложения, оба должны работать одновременно, и оба обращаются к одному и тому же файлу SQL Server CE .sdf
.
Если я запускаю один за другим, все работает нормально. Но при запуске обоих одновременно SQL Server CE вызывает исключение, которое
Недостаточно памяти для завершения этой операции.
Это мой код:
private void WriteToBD(string _serialNum, string _dataBytes)
{
try
{
using (_con = new SqlCeConnection(@"Data Source=\NandFlash\PLCPackets.sdf;"))
{
_con.Open();
string str = "insert into PLCPacket(SerialNum,Data) values('" + _serialNum + "','" + _dataBytes + "')";
using (SqlCeCommand _cmd = new SqlCeCommand(str, _con))
{
//_cmd.CommandType = System.Data.CommandType.Text;
int rowsAffected = _cmd.ExecuteNonQuery();
}
}
}
catch (Exception ex)
{
LogData.WriteFile(ex.Message);
}
finally
{
_con.Close();
_con.Dispose();
}
}