2016-12-08 34 views
0

從MySql數據庫創建實體模型。 char(16)類型的表格列在實體中轉換爲System.Guid。如何在實體框架中以字符串的形式獲取char列類型

所有的代碼都是基於字符串的,因爲之前我曾經使用過Sql Server。現在從MySql轉換實體後,我有這個問題。所有的代碼我有custome對象,我已經使用這些作爲字符串。

試圖從我閱讀的文章中使用一些技巧,但沒有用。使用舊的連接器/網絡完成,但沒有用處。

我怎樣才能獲得字符串mySql中的char類型列?

回答

0

MySQL和C#轉換類型不同。 例子:

VARCHAR將返回爲string爲C#

字符將返回一個System.GUID

BLOB據我知道會返回一個byte[]

沒有這樣的東西來轉換它們。 也許你一點點的解決方法是將他們在set

 [NotMapped] 
     private string _converter { get; set; } 
     [Column(TypeName = "char"), StringLength(16)] 
     public string MyProperty 
     { 
     get 
     { 
     return this._converter; 
     } 
     set 
     { 
     this._converter = Convert.ToString(value); 
     } 
     } 
+0

感謝您的快速回復和它工作正常,但如果我們有1個或2個例子,當我們刷新模型中,我們可以做到這一點ASLO我希望我們將放棄這個定製屬性。我有37個實例,我必須使用自定義屬性。相反,我將數據庫列類型更改爲Char(35),而不是Char(36),然後刷新模型並將列類型更改爲字符串。認爲這是我能做的最小的改變,並且它解決了我的問題 – user3625533

+0

是的,改變類型似乎是這種情況的最佳解決方案,並不完全知道你是如何使用該列的。但格拉斯幫助,並看到你有一個解決方案:) – Cataklysim

相關問題