gpt4 book ai didi

c# - 工作流 4.0 和 System.Attribute

转载 作者:行者123 更新时间:2023-11-30 22:38:32 24 4
gpt4 key购买 nike

工作流似乎是直接从 Xaml 创建的。那么如何才能在我的工作流类中包含 System.Attribute?

我能想到的唯一方法有点废话:

每个 Activity.xaml都有对应的代码文件:

[MyCustomAttribute("hello")]
public abstract class MyPointlessWorkflowBase : System.Activity
{

}

然后让我的 .xaml 从基础继承(我什至不知道这是否可能)?但这很糟糕,因为我必须为每个需要该属性的工作流添加一个额外的类。

在将 .xaml 覆盖之前,有没有办法像普通类一样对事件进行编码?

最佳答案

XAML 文件在编译之前会生成一个带有部分关键字的类,因此您可以创建一个具有相同名称的部分类并在其中添加属性。

[MyCustomAttribute("hello")]
public partial class MyWorkflow : Activity
{
}

或者,您可以使用 x:ClassAttributes 元素在 XAML 中添加属性,并以这种方式添加它们。

<p:Activity x:Class="WorkflowConsoleApplication1.MyWorkflow"
xmlns:s="clr-namespace:System;assembly=mscorlib"
xmlns:my="......"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<x:ClassAttributes>
<my:MyCustomAttribute>
<x:Arguments>
<s:String>hello</s:String>
</x:Arguments>
</my:MyCustomAttribute>
</x:ClassAttributes>
</p:Activity>

关于c# - 工作流 4.0 和 System.Attribute,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6069166/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com