1
t4 템플릿의 Microsoft.VisualStudio.Uml.Profiles.IStereotype 인터페이스에 대한 참조를 얻을 수있는 방법이 있습니까? 나는 실제 값을 보유하고있는 IStereotypeInstance가 아니라 UML 스테레오 타입의 정의를 저장하는 IStereotype을 의미합니다. 이런 식으로 시도했지만 ApplicableStereotypes enumereation이 비어 있습니다. T4 템플릿에서 IStereotype 참조를 얻는 방법?
void WriteClassAttributes(IClass classItem)
{
foreach(IStereotypeInstance stereoInst in classItem.AppliedStereotypes)
{
this.WriteLine(string.Format("{0} = {1}", stereoInst.Profile, stereoInst.Name));
}
foreach(IStereotype stereo in classItem.ApplicableStereotypes)
{
this.WriteLine(string.Format("{0} = {1}", stereo.Profile.Name, stereo.Name));
}
}
나는 ModelStore에서들을 IStereotype을 얻기 위해 노력했다. 그러나 ProfileManager 속성은 항상 null을 반환하고 코드가 나뉩니다.
string GetDefaultValue(IStereotypePropertyInstance stereoProp)
{
IModelStore modelStore = stereoProp.GetModelStore();
Microsoft.VisualStudio.Uml.Profiles.IProfile profile =
modelStore.ProfileManager.GetProfileByName(profileName);
foreach(IStereotype stereo in profile.Stereotypes)
{
if(stereo.Name == stereoProp.StereotypeInstance.Name )
{
return stereo.DefaultValue;
}
}
}
나는 갇혔다. 도와주세요!