C# 在SharePoint 2013工作流期间对变量使用自定义类型
我想从只有一个属性的类中定义一个简单对象作为sharepoint 2013工作流中的变量 课程代码为:C# 在SharePoint 2013工作流期间对变量使用自定义类型,c#,workflow,sharepoint-2013,workflow-foundation-4,sharepoint-workflow,C#,Workflow,Sharepoint 2013,Workflow Foundation 4,Sharepoint Workflow,我想从只有一个属性的类中定义一个简单对象作为sharepoint 2013工作流中的变量 课程代码为: public class RssFeedItem { public string Title { get; set; } } 我可以在工作流中创建此类型的变量,如下图所示: 之后,我添加一个分配活动,并设置FeedTitle=MyFeed.Title: 但是,当我构建工作流时,出现以下错误: 错误消息为:由于以下错误,无法转换表达式“MyFeed.Title”:类型“Feed
public class RssFeedItem
{
public string Title { get; set; }
}
我可以在工作流中创建此类型的变量,如下图所示:
之后,我添加一个分配活动,并设置FeedTitle=MyFeed.Title:
但是,当我构建工作流时,出现以下错误:
错误消息为:由于以下错误,无法转换表达式“MyFeed.Title”:类型“FeedReaderLib.RssFeedItem”上定义的属性“Title”不支持将属性访问转换为活动。
有人能帮我解决这个问题吗
任何帮助都将不胜感激 您似乎没有将RssFeedItem添加到AllowedTypes.xml中,请检查FeedReaderLib和AllowedTypes.xml的.dll文件是否放置在这些文件夹中:
C:\Program Files\Workflow Manager\1.0\Workflow\Artifacts
C:\Program Files\Workflow Manager\1.0\Workflow\WFWebRoot\bin
您可以在此处找到有关AllowedTypes.xml结构的更多详细信息:
但正如文章所说:
扩展允许的类型和活动集可能会对Workflow Manager 1.0的安全性、性能、可扩展性和可用性产生巨大影响,除非绝对必要,否则不应考虑扩展,例如,当工作流需要执行复杂的计算或数据转换时,这对于声明性活动中的作者来说是不切实际的。在这种情况下,高级用户可能希望改用自定义代码活动。服务器管理员可以扩展允许的类型集以包括此代码活动,前提是管理员完全信任此代码活动
也许值得尝试使用DynamicValue类型?我解决了我的问题
我只需要将SharePoint 2013更新为Service Pack 1,然后在SharePoint上重新运行SP Register workflow Service