使用流程图和UML活动图有什么实际区别?我有一些想法,但也许我在房间里想念一头大象?
流程图:
UML活动图:
对于我特定记录特定应用程序逻辑块的情况,我决定使用流程图.公司中的更多人将能够理解他们.
这是我最初的问题:
我希望能够打开使用内置的PDF查看器应用程序的Android在我的应用程序PDF文件,但我不知道如何启动其他应用程序.我敢肯定,我要打电话开始的活动,我只是不知道如何识别应用IM开放以及如何将文件传递给特定的应用程序.
有人有线索吗?
我刚刚了解到我手机上的pdf查看器实际上是由HTC制作的,Adobe刚刚发布了他们的android pdf查看器(这很棒).因此,新的问题是:我如何验证用户已经安装了Adobe的浏览器,然后我如何打开该应用将文件从我的应用程序?
我正在使用TFS 2010 Team Build自定义构建流程模板的默认工作流程.有一个名为的活动FindMatchingFiles
允许搜索具有在MatchPattern
属性中定义的模式的特定文件.如果我只指定一个文件扩展名,它可以工作.例:
String.Format("{0}\\**\\\*.msi", SourcesDirectory)
Run Code Online (Sandbox Code Playgroud)
但我想包括*.exe.尝试以下模式,但它不起作用:
String.Format("{0}\\**\\\*.(msi|exe)", SourcesDirectory)
Run Code Online (Sandbox Code Playgroud)
任何人都可以告诉我如何纠正它?
我正在开发自定义工作流程活动.我用代码生成工具(CrmSvcUtil.exe)创建了自己的helper.cs(Early Bound Entity Classes)
当我尝试编译代码时,它返回以下错误:
命名空间''已包含'Workflow'的定义
从Helper.cs文件.
有谁知道这意味着什么?
c# workflow-activity dynamic-programming dynamics-crm dynamics-crm-2011
我的解决方案中有3个项目.第一个项目是asp.net mvc
(作为客户端应用程序),另一个是WCF service application
最后一个项目workflow activity library
.我添加了WCF服务引用到工作流项目和工作流项目引用添加到asp.net mvc.当我在活动中使用wcf服务并从asp.net mvc启动工作流时,我收到此错误:
无法在ServiceModel客户端配置部分中找到名称为BasicHttpBinding_IService和合同IService的端点元素.这可能是因为没有为您的应用程序找到配置文件,或者因为在客户端元素中找不到与此名称匹配的端点元素.
这是我的工作流活动库app.config
文件内容:
<configuration>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BasicHttpBinding_IService1" />
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://localhost:30717/Service1.svc" binding="basicHttpBinding"
bindingConfiguration="BasicHttpBinding_IService1" contract="Service1.IService1"
name="BasicHttpBinding_IService1" />
</client>
</system.serviceModel>
</configuration>
Run Code Online (Sandbox Code Playgroud)
这是我的wcf项目web.config文件内容:
<configuration>
<appSettings>
<add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
</appSettings>
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5"/>
</system.web>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="false"/>
</behavior>
</serviceBehaviors>
</behaviors>
<protocolMapping>
<add binding="basicHttpBinding" scheme="http" />
</protocolMapping>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/> …
Run Code Online (Sandbox Code Playgroud) 如何在自定义BuildActivity中添加BuildMessage?
[BuildActivity(HostEnvironmentOption.Agent)]
public sealed class InvokeDotNetReactor : CodeActivity
{
[RequiredArgument]
public InArgument<string> SourcesDirectory { get; set; }
protected override void Execute(CodeActivityContext context)
{
...
BuildMessage bm = new BuildMessage()
{
Importance = BuildMessageImportance.High,
Message = "Hello From Custom TFS Build Activity"
};
}
}
Run Code Online (Sandbox Code Playgroud)
}
对于WorklowActivity,有一个特殊的WorkflowInvoker ......
非常感谢.
我已经创建了一个CodeActivity,用于(自定义)构建定义.在执行其主要目的之前,此活动需要将位于服务器上的文件复制到/从"源目录","自定义文件夹"等位置复制到"放置目录"(等).
我所拥有的一些变量是有效路径,但其他变量显然是"相对路径"的占位符.但是,我需要物理服务器路径,以便我可以来回复制有用的项目.
我需要的东西:
当然,我可以将项目名称传递给活动(用于解析目的)......因为那只是'俗气'.
我的问题是:
我知道如何获得的一些事实:
这些项目有些用处,而其他项目......并非如此.除非,我可以使用它们来获取物理服务器路径.
BuildDirectory:
'F:\ bld\Builds\41\Test\Test_CustomActivity_CreateNuGetPackages'
BuildDetail.DropLocationRoot:
'$/Test/Drops'
...希望我有物理路径
BuildDetail.BuildController.CustomAssemblyPath:
'$/Test/BuildProcessTemplates'
...希望我有物理路径
SourcesDirectory:
'F:\ bld\Builds\41\Test\Test_CustomActivity_CreateNuGetPackages\src'
Workspace.Folders:
'F:\ bld\Builds\41\Test\Test_CustomActivity_CreateNuGetPackages\src\Test\NuGet.Research \net35'
我想要的一些例子:
更新:2015年
2月2 日 @Edward - 根据您的要求.下面是我想要完成的更详细的解释.
在Sharepoint设计器的工作流编辑器中,我希望检索工作流程启动器的用户名/名称(即谁将其踢掉或触发工作流程) - 使用第三方产品(如Nintex Workflow 2007,我会使用它)相对容易像{Common:Initiator}这样的东西 - 但我似乎无法找到任何开箱即用的方法来使用共享点设计器和MOSS 2007.
更新
它看起来并不像OOTB支持这个相当明显的功能,所以我最终编写了一个自定义活动(如其中一个答案所示).我在这里列出了活动代码以供参考,虽然我怀疑在博客上可能存在一些这样的实例,因为它是一个非常简单的解决方案:
public partial class LookupInitiatorInfo : Activity
{
public static DependencyProperty __ActivationPropertiesProperty =
DependencyProperty.Register("__ActivationProperties",
typeof(Microsoft.SharePoint.Workflow.SPWorkflowActivationProperties),
typeof(LookupInitiatorInfo));
public static DependencyProperty __ContextProperty =
DependencyProperty.Register("__Context", typeof (WorkflowContext),
typeof (LookupInitiatorInfo));
public static DependencyProperty PropertyValueVariableProperty =
DependencyProperty.Register("PropertyValueVariable", typeof (string),
typeof(LookupInitiatorInfo));
public static DependencyProperty UserPropertyProperty =
DependencyProperty.Register("UserProperty", typeof (string),
typeof (LookupInitiatorInfo));
public LookupInitiatorInfo()
{
InitializeComponent();
}
[Description("ActivationProperties")]
[ValidationOption(ValidationOption.Required)]
[Browsable(true)]
[DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]
public Microsoft.SharePoint.Workflow.SPWorkflowActivationProperties __ActivationProperties
{
get { return ((Microsoft.SharePoint.Workflow.SPWorkflowActivationProperties)(base.GetValue(__ActivationPropertiesProperty))); }
set { base.SetValue(__ActivationPropertiesProperty, value); }
}
[Description("Context")]
[ValidationOption(ValidationOption.Required)] …
Run Code Online (Sandbox Code Playgroud) sharepoint workflow sharepoint-designer workflow-activity workflow-foundation
作为一名艺术家和音乐家,我经常想坐下来,让代码像一首自由形式的诗歌一样滚动,但我发现这不能像我有一个既定的目标一样好.我最近一直在尝试为自己设置微小,有趣的目标,这与艺术家如何描绘一个快速的静物画不同,但我想知道......
当他们想要编写乐趣代码时,其他人会做什么,而没有已经承诺的项目的束缚?
我得到的错误是
“WorkflowApplication 已中止,因为 Load 或 LoadRunnableInstance 操作引发了异常。创建一个新的 WorkflowApplication 对象以尝试加载另一个工作流实例。”
我正在使用“工作流应用程序”来运行工作流。我正在尝试加载的工作流实例(其中有一些)是在前一段时间创建的,并已保存到数据库中。
有没有办法找到在 Load 或 LoadRunnableInstance 操作期间实际抛出的异常?我在工作流应用程序对象的“中止”事件中发现了这个错误,但它没有告诉我加载过程中抛出的错误。
新增功能
我在 web.config 中粘贴了以下代码以获取有关上述异常的更多详细信息:
<system.diagnostics>
<sources>
<source name="System.Activities.DurableInstancing" switchValue="Verbose">
<listeners>
<add name="textListener" />
<remove name="Default" />
</listeners>
</source>
</sources>
<sharedListeners>
<add name="textListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="c:\Log\persistenceproblem.txt" traceOutputOptions="ProcessId, DateTime" />
</sharedListeners>
<trace autoflush="true" indentsize="4">
<listeners>
<add name="textListener" />
</listeners>
</trace>
</system.diagnostics>
这向我指出了例外
System.Activities.DurableInstancing 警告:131075:http : //msdn.microsoft.com/en-US/library/System.ServiceModel.Diagnostics.ThrowingException.aspxThrowing一个例外。来源:System.Activities.DurableInstancing 4.0.0.0。异常详细信息:System.Runtime.DurableInstancing.InstancePersistenceCommandException:名为 {urn:schemas-microsoft-com:System.Activities.Persistence/command}LoadWorkflow 的 InstancePersistenceCommand 的执行被错误中断。---> System.Runtime.Serialization.SerializationException: 反序列化器无法加载要反序列化的类型,因为类型 'System.Data.Entity.DynamicProxies.VacancyQuestionFormA_0A0432BFEF4023483E1B33251D8373454EAC6EDF2B2C4F600F2B2C4F6F300000000000000000000000000000000000000000000000000000000A0451D8373454EAC6EDF2B2C4F6F30_DynamicProxies.文化=中性,PublicKeyToken=null'。检查被序列化的类型是否与被反序列化的类型具有相同的协定,并使用相同的程序集。
所以现在我的问题是如何处理正在序列化的动态代理。根据我的阅读,这些是按需提供的,因此不能保证在 Dll 中,尤其是因为我们有多个开发人员。
我们已经有客户端将拥有带有序列化代理类的工作流实例。
我现在的问题变成了:Windows 工作流是否有一种内置方式可以更雄辩地处理序列化代理类?
c# workflow workflow-activity workflow-foundation workflow-foundation-4
c# ×3
tfs ×2
workflow ×2
android ×1
dynamics-crm ×1
flowchart ×1
methodology ×1
pdf ×1
sharepoint ×1
tfs2010 ×1
tfsbuild ×1
uml ×1
wcf ×1
wcf-binding ×1