Browse Source

EDMX: Workflow complete - Build Action "EntityDeploy" now working

pull/1/head
philippmaihart 15 years ago
parent
commit
1c5ca599db
  1. 49
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/DesignerIO.cs
  2. 2
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/EntityModelCodeGenerator.cs

49
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/DesignerIO.cs

@ -117,29 +117,40 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
XElement connectionElement = null; XElement connectionElement = null;
XElement optionsElement = null; XElement optionsElement = null;
if (edmView.EDM.DesignerProperties != null) if (edmView.EDM.DesignerProperties == null || edmView.EDM.DesignerProperties.FirstOrDefault(dp => dp.Name == "MetadataArtifactProcessing") == null)
{ {
connectionElement = new XElement(edmxNamespace + "Connection"); List<DesignerProperty> standardDesignerProperties = null;
XElement designerInfoPropertyElement1 = new XElement(edmxNamespace + "DesignerInfoPropertyElement");
connectionElement.Add(designerInfoPropertyElement1);
foreach (DesignerProperty designerProperty in edmView.EDM.DesignerProperties) if (edmView.EDM.DesignerProperties == null)
{ standardDesignerProperties = new List<DesignerProperty>();
connectionElement.Add(new XElement(edmxNamespace + "DesignerProperty", else
new XAttribute("Name", designerProperty.Name), standardDesignerProperties = edmView.EDM.DesignerProperties.ToList();
new XAttribute("Value", designerProperty.Value)));
}
optionsElement = new XElement(edmxNamespace + "Options"); standardDesignerProperties.Add(new DesignerProperty() { Name = "MetadataArtifactProcessing", Value = "EmbedInOutputAssembly" });
XElement designerInfoPropertyElement2 = new XElement(edmxNamespace + "DesignerInfoPropertyElement");
optionsElement.Add(designerInfoPropertyElement2);
foreach (DesignerProperty designerProperty in edmView.EDM.DesignerProperties) edmView.EDM.DesignerProperties = standardDesignerProperties;
{ }
optionsElement.Add(new XElement(edmxNamespace + "DesignerProperty",
new XAttribute("Name", designerProperty.Name), connectionElement = new XElement(edmxNamespace + "Connection");
new XAttribute("Value", designerProperty.Value))); XElement designerInfoPropertyElement1 = new XElement(edmxNamespace + "DesignerInfoPropertySet");
} connectionElement.Add(designerInfoPropertyElement1);
foreach (DesignerProperty designerProperty in edmView.EDM.DesignerProperties)
{
designerInfoPropertyElement1.Add(new XElement(edmxNamespace + "DesignerProperty",
new XAttribute("Name", designerProperty.Name),
new XAttribute("Value", designerProperty.Value)));
}
optionsElement = new XElement(edmxNamespace + "Options");
XElement designerInfoPropertyElement2 = new XElement(edmxNamespace + "DesignerInfoPropertySet");
optionsElement.Add(designerInfoPropertyElement2);
foreach (DesignerProperty designerProperty in edmView.EDM.DesignerProperties)
{
designerInfoPropertyElement2.Add(new XElement(edmxNamespace + "DesignerProperty",
new XAttribute("Name", designerProperty.Name),
new XAttribute("Value", designerProperty.Value)));
} }
XElement designerElement = new XElement(edmxNamespace + "Designer") XElement designerElement = new XElement(edmxNamespace + "Designer")

2
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/EntityModelCodeGenerator.cs

@ -42,7 +42,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
EntityCodeGenerator entityCodeGenerator = new EntityCodeGenerator(languageToGenerateCode); EntityCodeGenerator entityCodeGenerator = new EntityCodeGenerator(languageToGenerateCode);
IList<EdmSchemaError> edmSchemaErrors = entityCodeGenerator.GenerateCode(tempFileName, outputFileName); IList<EdmSchemaError> edmSchemaErrors = entityCodeGenerator.GenerateCode(tempFileName, outputFileName);
File.Delete(tempFileName); File.Delete(tempFileName);
context.EnsureOutputFileIsInProject(item, outputFileName); context.EnsureOutputFileIsInProject(item, outputFileName);
} }

Loading…
Cancel
Save