[MySQL][c#]列プロパティがguid型になってしまうときの対処法

.netのEntityFrameworkでDBからスキャフォールディングで定義を取り込んだ場合に、char(36)の列がstringではなく、guidになってしまう場合の対処法について。

目次

TL;DR

スキャフォールディングを行う接続文字列に、以下のオプションを追加しましょう。

guidformat=none

接続文字列の全体イメージ

全体だとこんな感じです。

dotnet ef dbcontext scaffold "server=[サーバ名];port=[ポート番号];database=[データベース名];uid=[ユーザ名];pwd=[パスワード];guidformat=none"

char(36)以外にも効果あり

私のケースではchar(36)が該当しましたが、それ以外にもguidになるパターンはあるようです。

その場合にも同様の対処法でstring型へ変換されるようになります。

最後に

あまり日本語での記事が存在せず、実際の接続文字列の例がなかったので。

簡単な記事ですが、お困りの方のお役に立てれば幸いです。

今日も一隅を照らすことができますように。それではまた。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次