【发布时间】:2012-09-08 14:38:29
【问题描述】:
我正在尝试使用 xml 文件来确定应将哪些 Outlook 属性包含在通过 VSTO 插件代码执行的工作流中。
例子
xml 可能声明当前Outlook.MailItem 的Subject 是工作流所需的。我无法使用反射来使用其字符串名称“Subject”获取Subject 属性,因为MailItem 是一个接口而不是一个类。
我认为解决方案可能是创建和编译动态 C# 代码,按名称返回所需的属性...
问题:我一直无法确定如何找到正在运行的 Microsoft.Office.Interop.Outlook.dll 的位置,以便将其添加为对动态编译器的引用。尝试了很多组合,最后的尝试如下图。
CodeDomProvider provider = new Microsoft.CSharp.CSharpCodeProvider();
CompilerParameters parameters = new CompilerParameters();
parameters.GenerateExecutable = false;
parameters.GenerateInMemory = true;
parameters.IncludeDebugInformation = false;
parameters.ReferencedAssemblies.Add(Assembly.GetAssembly(typeof(Outlook.MailItem)).Location);
【问题讨论】:
标签: c# reference outlook vsto csharpcodeprovider