Portál AbcLinuxu, 16. května 2024 20:45


Dotaz: C# TableDependency

16.1.2017 19:25 Lanny2013 | skóre: 2
C# TableDependency
Přečteno: 445×
Odpovědět | Admin
C#
Ahoj chtěl bych se zeptat zda někdo nemáte zkušenosti s knihovnou TableDependency.
Snažím se pomocí této knihovny zjišťovat aktualizaci Mysql Databáze.
Mám tento příkaz:
var mapper = new ModelToTableMapper"Pokus"();
mapper.AddMapping(c => c.nazev, "nazvy");

string conn = @"data source=00.01.02.03;initial catalog=Moje db;integrated security=True;
User ID=id;Password=ZmdsysgsmhTjbXjaTjDPwOD;";

using (var change = new SqlTableDependency"Pokus"(conn, "objednavky", mapper))
{
change.OnChanged += Table_change;
change.Start();
}


Jenomže při spuštění mi to hodí následnou chybu:

An unhandled exception of type 'TableDependency.Exceptions.InvalidConnectionStringException' occurred in 
TableDependency.SqlClient.dll Additional information: Invalid connection string.

Nevím v čem může být problém protože se stejným conection stringem se normálně k databázi připojím.
Předem děkuji za jakoukoliv radu.

connection string je zde z bezpečnostných důvodů změněn. Ale formátově odpovídá skutečnosti
* hranaté závorly jsou zde nahrazeny "
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

16.1.2017 21:12 NN
Rozbalit Rozbalit vše Re: C# TableDependency
Odpovědět | | Sbalit | Link | Blokovat | Admin
Podle dokumentace se pri volbe Integrated Security = true, user id ani password nepouziva..
16.1.2017 22:02 Lanny2013 | skóre: 2
Rozbalit Rozbalit vše Re: C# TableDependency
Bohužel odstranil jsem tedy Integrated Security = true.
I tak spojení nefunguje. Pořád stejná chyba. Zkusil jsem i přejmenovat databázi aby název byl bez mezery. Ještě mě napadlo doplnit port=3306 protože server (databáze) na něm naslouchá. Při normálním připojení ho nepoužívám jelikož funguje i bez zadání tak i s zadáním.
I tak ale toto spojení nefunguje.
16.1.2017 22:48 NN
Rozbalit Rozbalit vše Re: C# TableDependency
Co bile znaky, kodovani..
17.1.2017 09:52 kaaja | skóre: 24 | blog: Sem tam něco | Podbořany, Praha
Rozbalit Rozbalit vše Re: C# TableDependency
Odpovědět | | Sbalit | Link | Blokovat | Admin
Mě se osobně zdá, že ta knihovna je jenom pro SQL Server - čti Microsoft Sql Server. Takže se prostě do mysql nepřipojíš, protože to neumí.
17.1.2017 13:17 Lanny2013 | skóre: 2
Rozbalit Rozbalit vše Re: C# TableDependency
No asi máš pravdu.
Nevíte o nějakém jiném řešení. Mám aplikaci C# .NET připojenou na Mysql databázi. Potřebuji když aplikace bude puštěna a provedou se nějaké změny v databázi aby to aplikace automatickz zaznamenala a následně aktualizovala zobrazená data.
17.1.2017 16:33 kaaja | skóre: 24 | blog: Sem tam něco | Podbořany, Praha
Rozbalit Rozbalit vše Re: C# TableDependency
Je otázka jestli to vůbec nějak jednoduše na mysql jde. Záleží, jaké změny chcete detekovat. Asi nejjednodušší by bylo připravit si triggery, které informace o změně budou propisovat do nějaké tabulky, ze které bude program pravidelně číst. Např. by se tam vždy nastavila informace, kdy naposled byla tabulka upravena (jestli to bude stačit) a program by si pamatoval, kdy naposled tabulku načetl. Jak jsem koukal, tak ta knihovna si uvnitř triggery sama taky vytváří. Ale používá na předání informací o změnách mssql featury.

pavlix avatar 17.1.2017 16:41 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: C# TableDependency
Jo, sypat někam pravidelné dotazy místo toho, aby se člověk nechal notifikovat, to musí být super. :)
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
18.1.2017 16:02 kaaja | skóre: 24 | blog: Sem tam něco | Podbořany, Praha
Rozbalit Rozbalit vše Re: C# TableDependency
To uznávám, ale je to relativně jednoduché řešení. Určitě by šlo na mysql udělat nějaké řešení, kde by trigger pouštěl nějakou externí proceduru, která by to byla schopna aplikaci nějak notifikovat (zasílat informaci o změně do nějaké message queue, kterou by aplikace vybírala). Otázka je, jak funguje celé řešení a jestli by to nebyl kanón na vrabce.

18.1.2017 16:43 Michal Karas | skóre: 45 | blog: /dev/random
Rozbalit Rozbalit vše Re: C# TableDependency
Ze zvědavosti jsem koukal na možnosti, jak dělat z MySQL ven notifikace a narazil jsem snad jen na sys_exec prostřednictvím UDF.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.