2013-05-10 1 views
3

나는이 같은 edmgen.exe 도구를 사용하고 있습니다 : 위의 코드edmgen.exe를 사용하여 모델을 생성 할 때보기를 제외하는 방법은 무엇입니까?

"%windir%\Microsoft.NET\Framework\v4.0.30319\edmgen.exe" /mode:fullgeneration 
/c:"Data Source=%datasourceserver%; Initial Catalog=School; Integrated Security=SSPI" 
/project:School /entitycontainer:SchoolEntities /namespace:SchoolModel /language:CSharp 

는 EF 모델의 뷰를 포함합니다. 아래의 스크린 샷과 비슷한보기를 포함하고 싶지 않습니다. 어떻게 할 수 있습니까? enter image description here

답변

6

edmgen을 사용하여이를 수행 할 방법이없는 것처럼 보입니다. 반사경을 사용하여, 그 edmgen이 작업을 수행 할 System.Data.Entity.Design.dll를 사용하여 발견, 당신은 다음과 같이 & 기능을 프로그래밍 방식으로 DB를보기를 제외 할 수

 var essg = new EntityStoreSchemaGenerator("System.Data.SqlClient", ConfigurationManager.ConnectionStrings["MST"].ConnectionString, "EFModel"); 
     essg.GenerateForeignKeyProperties = true; 
     var filter1 = new EntityStoreSchemaFilterEntry(null, null, null, EntityStoreSchemaFilterObjectTypes.Table, EntityStoreSchemaFilterEffect.Allow); 
     var filter2 = new EntityStoreSchemaFilterEntry(null, null, null, EntityStoreSchemaFilterObjectTypes.View, EntityStoreSchemaFilterEffect.Exclude); 
     var filter3 = new EntityStoreSchemaFilterEntry(null, null, null, EntityStoreSchemaFilterObjectTypes.Function, EntityStoreSchemaFilterEffect.Exclude); 
     var filters = new EntityStoreSchemaFilterEntry[] { filter1, filter2, filter3 }; 
     var errors1 = essg.GenerateStoreMetadata(filters); 
+0

감사합니다! 이걸하고 싶어하는 네 번째 사람이 될 것 같은데 ... –

관련 문제