1

我正在做一個代碼第一個ASP .NET MVC項目。Model.GetType()。名稱附加了什麼看起來像GUID

在我看來,我正在考慮實體。

@model MyProject.Model.MyEntity 

在視圖中,我呈現了一個局部視圖,傳入了模型。

@Html.Partial("_Edit", Model) 

在這個局部視圖中,我將模型定義爲一個對象。

@model object 

當我顯示模型的類型時,我得到了一個GUID附加到它。

@{ 
    Type entityType = Model.GetType(); 
    string singularName = entityType.Name; 
} 

@{ ViewBag.Title = "Edit an existing " + singularName; } 

這是我在屏幕上看到:

編輯現有MyEntity_CB3FF0C41867D7757E4AF90F10EE2F7ED5B407EFCB96592EC3FB0A06DCAB902B

任何人都知道爲什麼,是有辦法解決它比做上下劃線一個SubString()其他?

回答

3

此問題植根於實體框架而不是MVC x。

我遇到了同樣的問題,並打印出來我的模型(「SupportContactSecurity」)的全名:

System.Data.Entity.DynamicProxies.SupportContactSecuri_4C68726A6CC129D0001F286F1E38612D8DEC28F26CA3D3884B53BCDF810D8E6A 

DynamicProxies身臨其境的關鍵字。實體框架(默認情況下)使用這些代理替換您的實體,以便它可以在上下文級別更改跟蹤(我認爲)。如果您想關閉此功能,請參閱this Stack Exchange question

相關問題