2013-05-01 75 views
0

我創建了一個概念模型,並將其映射到存儲模型。 然後,我一直在對數據庫進行更改,添加/更改/ etc字段。實體設計器/實體框架/ edmx - 只更新存儲模型(不是概念模型)

我現在想要的是更新我的新數據庫結構和概念模型之間的映射,但我不希望更新模型嚮導改變我的概念模型(甚至沒有添加字段 - 它導致一個大的亂)。

我的問題是,當我去映射窗口,在表(左列)下,它仍然顯示存儲模型中的字段,現在與我更新的數據庫不同步。

看來我需要更新存儲模型,所以我可以在映射窗口中選擇正確的字段。但是這怎麼可能?或者有其他解決方法嗎?

回答

1

EDMX文件是一個XML文件,它是由3個不同部分組成的組合文件。如果你對你的EDMX文件上右鍵單擊並選擇 「打開方式... XML編輯器」,你會看到3個不同的部分:

  • <edmx:ConceptualModels>
  • <edmx:StorageModels>
  • <edmx:Mappings>

這些部分可以手動編輯,風險自負! :-)

看看這個SO question,我在CSDL,SSDL,MSL以及如何更新方面給了一些細節。我也給出了一個鏈接到這個工具,可以幫助你。

請注意,通過將模型的「Meta Artifact Processing」屬性更改爲「複製到輸出目錄」,也可以生成CSDL,SSDL & MSL文件,而不是將它們嵌入到二進制文件中。