Warning-se dobijas zato sto is operator koristis nad objektom koji nikad ne moze biti to sto ispitujes, doduse sad tek vidim da se meni potkrala greska u onom primeru, umesto
Code:
if (exp is ConstraintException)
treba
Code:
if (e is ConstraintException)
ali to sad vec nije toliko bitno jer tebi dolazi greska sa SQL Servera. ConstraintException ces dobiti ako imas neki key nad DataTable-om, zato ti savetujem da dodelis jedan. Ali ne bi bilo lose da handlujes exception-e bez obzira na izvor tj. ko ih salje. Evo, probaj ovo posto vidim da radis sa SQL Serverom
Code:
try
{
testTableAdapter1.InsertQuery(nesto1, nesto2, nesto3);
}
catch (Exception exp)
{
Exception e = exp.GetBaseException();
if (e is ConstraintException)
{
MessageBox.Show(ConstraintMessage);
}
else if (e is SqlException && ((SqlException)e).Number == 2627)
{
MessageBox.Show(ConstraintMessage);
}
else
{
MessageBox.Show(e.Message);
}
}
Ako te interesuju detalji o SqlException greskama (Number property) otkucaj na SQL Serveru
Code:
SELECT * FROM master.dbo.sysmessages WHERE error = 2627