Sunday, February 17, 2013 7:23 PM
I have custom properties withing the CSDL section of the EDMX so as to control the operation of a T4 Template.
But how do I access them in the T4 Template?
Does the API from EF.Utility.CS.ttinclude help me?
I can write,
string inputFile = @"Model1.edmx"; EdmItemCollection ItemCollection = loader.CreateEdmItemCollection(inputFile); var abc = ItemCollection.GetItems<??Something??>().ToList();
but I don't know whether the custom properties are present in the EdmItemCollection?
Somehow I need to access the Schema, and then I could access the individual Xelements.
But re-parsing the EDMX file for this seems wasteful, and was looking for a better way.
<Schema Namespace="Database1Model"> stuff removed for clarity <a:CslaUseDbContext xmlns:a="http://schemas.tempuri.com/CslaDesignerExtension">Yes</a:CslaUseDbContext>
- Edited by jrad Sunday, February 17, 2013 7:26 PM
Wednesday, February 20, 2013 3:20 AMModerator
Welcome to the MSDN forum.
I am trying to involve a senior expert into your thread. Please wait for the response. Sorry for any inconvenience.
Alexander Sun [MSFT]
MSDN Community Support | Feedback to us
Develop and promote your apps in Windows Store
Please remember to mark the replies as answers if they help and unmark them if they provide no help.
Wednesday, February 27, 2013 6:04 PM
If you are able to express your custom properties as XML attributes rather than elements, then EF will parse those into the MetadataProperties collection on the corresponding metadata item. For example, you could add a custom attribute to the EntityContainer element in XML, then retrieve the EntityContainer metadata item using ItemCollection as you show above.