Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 3345|Odpověď: 1

[Zdroj] Vyřešena chyba Dapper.Contrib "Hodnota je příliš velká nebo příliš malá pro Int32"

[Kopírovat odkaz]
Zveřejněno 06.08.2023 14:04:48 | | | |
Požadavky: Při použití Dapper.Contrib pro spuštění metody Insert je návratová hodnota jednoho vloženého data pro pole samozvyšujícího se primárního klíče hodnota po vložení, a když je návratová hodnota větší než 2147483647, Dapper.Contrib vyhodí výjimku "Hodnota je příliš velká nebo příliš malá pro Int32".

Při použití Dapper.Contrib pro vložení dat se objeví chyba "Hodnota je příliš velká nebo příliš malá pro Int32" a databáze byla úspěšně vložena! podezříval jsem, že jde o problém s frameworkem ORM, pak jsem hledal na GitHubu a zjistil, že jde o známý problém,Tým Dapperu to neopravil, protože se obává, že by to mohlo mít příliš velký dopad, a jiní autoři poskytli Dapperu PR, ale také byl uzavřen, jak je znázorněno na obrázku níže:

Přihlášení k hypertextovému odkazu je viditelné.



Důvodem výjimky je, že po získání self-value-added, například SQL Server adaptéru, je castování převedeno na chybu typu int a maximální hodnota int je (int. MaxValue): 2147483647, jak je znázorněno na obrázku níže:



Pro reprodukci metody vytvořte novou tabulku, přidejte primární klíč začínající od 2147483648 a SQL skript je následující:

Odkazem na balíček Dapper.Contrib proveďte operaci vložení pomocí následujícího kódu:

Chyba je následující:



řešení

Nahraďte Dapper.Contrib balíčkem Dapper.Contrib.Unofficial následujícím příkazem:

Test již chybu nenabízí, jak je znázorněno na následujícím obrázku:



Tip: Dapper.Contrib.Unofficial není plně otestovaný, prosím, otestujte si ho sami, než ho použijete!

(Konec)





Předchozí:Qv2ray připojuje službu Trojan-Go na Windows
Další:SQL Server najde data, která varchar převede na bigint chybu
 Pronajímatel| Zveřejněno 06.08.2023 14:14:21 |
Upravená adresa na GitHubu:https://github.com/itsvse/Dapper.Contrib
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com