ive dostal problém, ktorý mi hodil knowlegde v programovaní o pár rokov dozadu :)
Ako je možné, že všetko funguje dobre na mojom vývojovom stroji a na iných testovacích strojoch, ale na mierne odlišnom cieľovom systéme to jednoducho nebude fungovať správne.
Pokúšam sa otvoriť databázové pripojenie k aMSSQLSERVER. To sa však nestane. Výnimkou je vrhanie „odkazu na objekt, ktorý nie je nastavený na inštanciu objektu ...“ (ako som spomenul iba v cieľovom systéme, všade inde nie je problém)
Výnimkou je ukázanie na connection.Open () riadok v nasledujúcom kóde.
private void openConnection()
{
string connectionString = getConnectionString();
try
{
connection = new SqlConnection(connectionString);
connection.Open();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
Porovnal som systémy. Sú takmer rovnaké, okrem niektorých bezpečnostných politík. Oba sú win7 64bitové s rovnakou verziou .net
Dúfam, že mi niekto pomôže s touto záhadou.
Vopred ďakujem
edit: ive pridal pripojovací reťazec a stacktrace .... možno to môže niekomu pomôcť, aby mi pomohol.
odpovede:
0 pre odpoveď č. 1Skontrolujte, či je „spojenie“ za riadkom „nové pripojenie“ nulové, a v prípade, že je, urobte výnimku.
Pravdepodobne máte nejaké zmeny vpripojovací reťazec vo vašich prostrediach, ktorý sa vám nepodarilo adresovať. Vyskúšajte pripojovací reťazec pomocou databázového klienta príkazového riadku zo servera, na ktorom by mal bežať; pravdepodobne sa to nebude pripájať.
0 pre odpoveď č. 2
Mám to! Len som musel aktualizovať.NET verzia 4.5.2 a všetko funguje dobre. Po spustení ďalších testov som zistil, že skutočnou výnimkou bola accessviolationexception a nejako sa zdá, že to bolo pokryté nullreferenceexception. stále však neviem, prečo iný systém nemal tieto problémy s .NET verziou 4.5.1, ale po dňoch ladenia mi to nevadí. ďakujem pekne za všetky vaše rady
pozdravia