我需要使用Fluent API和Entity Framework 5 Code First檢索爲字段指定的maxlength值。如何從運行時的Fluent API映射規範中獲取MaxLength?
我已經看到了一些使用MetadataWorkspace的例子,但在使用Fluent API時它不起作用。 舉例來說,我想這個代碼,但對於MaxLenght值總是空:
ObjectContext.MetadataWorkspace.GetItem<GlobalItem>(typeof(TEntity).FullName, DataSpace.OSpace).MetadataProperties[field].TypeUsage.Facets["MaxLength"].Value
的流暢API配置文件,我有必要的屬性以下代碼中:
Property(t => t.Name).HasMaxLength(50);
我知道映射正在工作,因爲如果我嘗試在該字段中保存超過50個字符的對象,它將失敗。
我只需要得到maxlenght值,但給一些角度來看,目標是指導:
- 創建新的Foo對象
- 獲得使用流利的API欄屬性定義的最大長度值。
- 將基於maxlength的特定規則應用於要分配給Bar的字符串。
- 保存。
在此先感謝。
你想讓我們爲你寫嗎? –
這不會是必要的,我只需要指導我可以使用什麼庫來獲取maxlength值,代碼已經完成,除了該部分。我只是編輯了這個問題來說清楚。謝謝。 – Kakaroto
'但它不起作用,當你使用Fluent API。什麼不工作? –