- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 Windows Workflow Foundation 4.5 WCF 工作流服务应用程序。我正在尝试返回 Dictionary<IEdmEntityType, DataTable>
来 self 的 CodeActivity<Dictionary<IEdmEntityType, DataTable>>
.代码没有遇到编译时错误,但 XAML 无法编译。
我的 XAML 的相关部分是这样的:
我们有序列的变量声明,我试图在其中转储我的返回值。我们试图分配给的变量称为 EntityTableRelationships
.
<p1:Sequence.Variables>
<p1:Variable x:TypeArguments="x:String" Name="MetadataContent" />
<p1:Variable x:TypeArguments="scg:Dictionary(mde:IEdmEntityType, sd:DataTable)" Name="EntityTableRelationships" />
</p1:Sequence.Variables>
还有 OutArgument
,来自 Execute
的返回值, 来 self 们的 CodeActivity<..>
被分配给 EntityTableRelationships
.
<o:TransformMetadataToTables.Result>
<p1:OutArgument x:TypeArguments="scg:Dictionary(mde:IEdmEntityType, sd:DataTable)">
<mca:CSharpReference x:TypeArguments="scg:Dictionary(mde:IEdmEntityType, sd:DataTable)">EntityTableRelationships</mca:CSharpReference>
</p1:OutArgument>
</o:TransformMetadataToTables.Result>
产生的 XAML 验证错误是:
Type 'http://schemas.microsoft.com/netfx/2009/xaml/activities:OutArgument(Dictionary)' is not assignable to type 'http://schemas.microsoft.com/netfx/2009/xaml/activities:OutArgument(Dictionary)' of member 'EntityTableRelationships'.
最初我以为我输入了错误的返回值,或者我引用了一个具有相同名称但在不同命名空间中的接口(interface)。事实并非如此。
我的另一个想法是,工作流可能无法与任何 Dictionary<TKey, TValue>
配合使用声明TKey
作为任何界面。我做了一个测试用例,它运行良好。我还在设计器中按顺序添加了该步骤,就像这里所做的那样。我没有尝试 IEdmEntityType
作为 TKey
,但我看不出有什么不同的原因。
这可能是什么原因造成的,我该如何解决?
编辑#1
进一步的研究表明 DataTable
是罪魁祸首。 DataSet
也有问题。我唯一能看出这些类型的独特之处在于它们继承自 MarshalByValueComponent
它有一个 TypeConverterAttribute
在上面。那TypeConverter
可能会影响 XAML 序列化联编程序并导致问题,从而表明 WF 4.5 中存在错误。但是,我不愿意说这是一个错误。
没有Dictionary<TKey, DataTable>
似乎可以通过设计器在 WF 4.5 中传递。
编辑#2
它似乎与DataTable
可能有也可能没有任何关系。 .你也不能绕过Dictionary<IEdmEntityType, object>
.
尝试使用 System.Data
之外的类重现问题和System.Object
以外的, 我做了一个新的工作流项目。
我创建了自己的接口(interface)、类和结构,看看是否有任何东西会触发它再次中断。
而不是使用 IEdmEntityType
,我做了IMyInterface
这只是定义为:
public interface IMyInterface
{
int Id
{
get;
}
}
MyStruct
结构工作正常。这是定义:
public struct MyStruct
{
public int A;
public int B;
}
MyClass
上课效果很好。这是定义:
public class MyClass
{
public int A;
public int B;
}
MyClassComplex
具有自动属性和对 object
的引用也有效。
public class MyClassComplex
{
public int A
{
get;
private set;
}
public int B
{
get;
private set;
}
public object C
{
get;
private set;
}
}
本来我也觉得可能和DataTable
之间的公共(public)属性有关和 DataSet
,所以我将它们添加到 MyClassComplex
, 但它仍然运行良好。
另外,我有 MyClassComplex
继承自 MarshalByValueComponent
,并且没有奇怪的交互,再次没有错误。
我采用了同一个项目,只是将我的变量设置为 Dictionary<IMyInterface, DataTable>
并更改了 CodeActivity<IMyInterface, MyClassComplex>
至 CodeActivity<IMyInterface, DataTable>
,它给出了与我原来的非测试项目相同的错误。
编辑 #3
由于我已经对此进行了测试并在单独的项目和同事的机器上重现了该问题,并且没有文档支持为什么这不起作用,所以我提交了 bug report on MS Connect
最佳答案
显然,Windows Workflow Foundation 包含特定版本的 Microsoft.Data.OData
,将 ODataLib NuGet 包添加到项目会与之冲突。我四处搜索了最初包含引用的位置,结果发现它是在代码生成期间作为工作流设计者的代码生成过程的一部分默默添加的。
在客户端没有任何错误表明某些程序集版本冲突。据我所知,没有办法解决这个问题。 Microsoft 已“按设计”关闭了票证。
关于c# - 此类型分配错误是 WCF 或 Windows Workflow Foundation 4.5 中的错误吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21712104/
这似乎比我最初猜测的更复杂。我有一个工作流程需要在代码中启动另一个工作流程。这是怎么做到的?我是否必须首先获取对当前工作流实例的 WorkflowRuntime 的引用? 最佳答案 我认为Invoke
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be
需要有关实现简单配额系统的最佳做法的指导 我想限制成员可以将自定义内容类型(称为 token )添加到他们的成员文件夹的次数(我还创建了一个自定义成员文件夹)。 用例(限制成员可添加的 token 数
我最近发布了一个有关在Web应用程序中运行Windows Workflow的问题。当然,这是一个技术性很强的问题,其中包含ManualWorkflowSchedulerService,HandleEx
今天,我接受了“Microsoft Workflow Foundation”的培训。 虽然我认为这个想法很巧妙,但我仍然将其视为概念证明,而不是现实生活中的解决方案。无需键入一行代码(或只键入其中的几
我在WF4上遇到了一个非常奇怪的问题:当我使用Switch Activity 并决定字符串变量的值时,WF以某种方式将WF的参数视为字符串,而不是变量的名称。因此,我得到了不正确的结果。复制步骤:-创
WWF 能否处理同时“主动”并行处理数十条记录的高吞吐量场景? 我们希望构建一个每小时处理几千条记录的工作流程。每条记录最多需要一分钟来处理,因为它会进行外部 Web 服务调用。 我们正在测试 Win
在我的项目中,我有一个在多个实体上运行以完成业务交易的工作流程。表示工作流逻辑的最佳位置是什么?目前我只是创建一个“XXXManager”,它负责与实体对象协作以完成业务交易。还有其他选择吗? 最佳答
我想编写一个工作流应用程序,将链接路由到文档。路由基于机器而不是用户,因为我不知道谁将在给定的岗位上。例如,我有一个表格。它最初是在位置 A 填写的。现在我希望它转到位置 B 并让他们填写其余部分。最
在我们的项目中,我们需要一个规则引擎组件,经过一段时间的研究,我发现.NET Workflow 也有它的规则引擎。 .NET 工作流规则引擎和其他引擎之间是否有任何完整的比较列表,例如NxBRE、Dr
我认为这可能是一个简单的问题,但我似乎无法弄清楚。 我有一个简单地发送邮件的工作流程。在邮件的内容中,我 有一个超链接可以返回到我们的 SAP CRM 系统。我将一些参数传递给这个超链接。 工作流程工
我正在试用 Workflow 4.0,希望编写自定义事件来启动外部可执行文件,等待该过程完成,然后恢复工作流中的后续步骤。 我发现以下示例显示(靠近页面底部)如何编写一个事件来等待文件到达特定目录:
我有一个工作流,它将观察某些数据库并在它注意到触发器时启动其他工作流。我只希望这个“观察者”工作流程的一个实例在任何时间点运行;否则,如果有两个或更多正在运行,他们都会注意到更改并启动相同的工作流程,
使用 Windows Workflow Foundation WF4,我有一个带有 System.Guid 的自定义事件名为 UniqueId 的属性. 我希望用户能够将我的事件拖到工作流上,并让它自
Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。 想改善这个问题吗?更新问题,以使为on-topic。 6
已结束。此问题正在寻求书籍、工具、软件库等的推荐。它不满足Stack Overflow guidelines 。目前不接受答案。 我们不允许提出寻求书籍、工具、软件库等推荐的问题。您可以编辑问题,以便
我正在尝试重新托管 WF4 工作流设计器。在“导入”选项卡中,我希望默认导入一些命名空间。它看起来像这样: Imported namespaces http://imageshack.us/m/850
how to work with 2010 workflows using powershell 上有一些指南.有人可以向我指出如何对 2013 年的工作流程做同样的事情吗?它们不再列在 $list.
在哪里可以找到 Nintex Workflow 网络服务的文档? 网络服务可以在http://myservername/MyNintexSite/_vti_bin/nintexworkflow/wor
我创建了一个 Activity (CodeActivity) 来检索我居住的温度。 我不想将该事件添加到工作流中并将其连接到一个 if 语句/事件,该语句/事件可以根据我的温度参数做不同的事情。 但我
我是一名优秀的程序员,十分优秀!