我正在 Visual Studio 11 Beta 中创建一个活动库(尽管我在 VS2010 中重复了所有步骤,结果相同),目标是 .NET 4.0 框架。
当我开始通过工作流设计器输入参数时,我注意到默认值框中的“输入 VB 表达式”消息。我不确定如何将语言上下文从 VB 更改为 C#。
要创建项目,我按照以下步骤操作:
转到文件>新建并选择项目...
在 New Project 对话框窗口的Installed > Templates部分中,选择Visual C# > Workflow > Activity Library
像往常一样为项目命名,然后单击确定
基本上就是这样。然后我注意到默认Activity1.xaml
文件在默认值字段中需要 VB。我删除了它,然后按照以下步骤创建了一个新活动:
右键单击项目并选择添加>新项目...
在 Add New Item 对话框窗口中,导航到Installed > Visual C# Items > Workflow > Activity
命名活动并单击确定
结果相同,默认值字段需要 VB 表达式。
当我查看 XAML 代码时,我可以清楚地看到Microsoft.VisualBasic.Activities
列出的命名空间和一个VisualBasic.Settings
元素,但我不确定如何更改它;每次我尝试,我都会把事情搞砸。这是正在生成的 XAML 代码:
<Activity mc:Ignorable="sads sap" x:Class="THINKImport.CustomerAddOrderAdd"
xmlns="http://schemas.microsoft.com/netfx/2009/xaml/activities"
xmlns:local="clr-namespace:THINKImport.THINKWebReference"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:mva="clr-namespace:Microsoft.VisualBasic.Activities;assembly=System.Activities"
xmlns:s="clr-namespace:System;assembly=System.Core"
xmlns:s1="clr-namespace:System;assembly=System"
xmlns:s2="clr-namespace:System;assembly=System.ServiceModel"
xmlns:s3="clr-namespace:System;assembly=mscorlib"
xmlns:sads="http://schemas.microsoft.com/netfx/2010/xaml/activities/debugger"
xmlns:sap="http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation"
xmlns:t="clr-namespace:THINKImport"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<x:Members>
<x:Property Name="user_login_data" Type="InArgument(local:user_login_data)" />
<!--Removed the other properties for brevity-->
</x:Members>
<sap:VirtualizedContainerService.HintSize>440,440</sap:VirtualizedContainerService.HintSize>
<mva:VisualBasic.Settings>Assembly references and imported namespaces for internal implementation</mva:VisualBasic.Settings>
</Activity>