作为我们应用程序的一部分,我需要编写"简单"的工作流系统,该系统将用于支持文档创建生命周期.它应该支持: - 不同的活动:编辑文档,验证文档(批准,拒绝),发布文档...... - 将此活动分配给不同的人/用户 - "并行拆分和加入".例如,我想支持这样的工作流程:
- begin
1.) Create document
2.) Translate document
2.1) Translate into English
2.1.1) Translate document into English
2.1.2) Verify English translation
2.2) Translate into Italian
2.2.1) Translate document into Italian
2.2.2) Verify Italian translation
3.) Verify complete document
4.) Publish document
- end
Run Code Online (Sandbox Code Playgroud)
它将用于asp.net应用程序(C#).
最后一部分:我想知道是否有任何模式,库或文章可以帮助我开始这项任务?世界自然基金会是否适合这个?
有一些材料(甚至在stackoverflow上),但我不知道如何处理并行性?
我有一个CSV文件,我想将其视为源代码.基本上我想采用csv行并使用它们,就像它们调用具有所有字符串参数的函数一样.
问题是,当文本中有逗号时,单个元素仅被双引号.
是否有一种快速方法可以在csv行中添加双引号的所有元素.
原始文档是一个excel文件,因此excel中的任何内容都可以,但欢迎其他快速工具.
我正在尝试编写一个需要使用剪贴板来实现某些功能的小应用程序.由于我不想覆盖当前在剪贴板中的用户数据,我决定将其保存到内存中,完成我的工作然后将其写回.下面的代码是一个控制台应用程序,它是我正在尝试做的准系统示例.
我遇到的问题是恢复状态.如果我在运行应用程序之前从Visual Studio将某些内容复制到剪贴板,则剪贴板中总共有六个对象(各种字符串格式和一个区域设置)都将放入缓存中.一旦我恢复它们,虽然只有区域设置在剪贴板中,并且每次调用SetData()都会覆盖最后一个.(顺便说一句,SetDataObject似乎不是GetDataObject的反转,所以我不能只使用它)
我有什么想法可以存储剪贴板状态并在以后恢复它?
[STAThread]
static void Main(string[] args)
{
//Store the old clipboard data
Dictionary<string, object> clipboardCache = new Dictionary<string, object>();
IDataObject clipboardData = Clipboard.GetDataObject();
foreach (string format in clipboardData.GetFormats())
{
clipboardCache.Add(format, clipboardData.GetData(format));
}
Clipboard.SetText("Hello world!");
string value = Clipboard.GetText();
Console.WriteLine(value);
//Clear the clipboard again and restore old data
Clipboard.Clear();
foreach (KeyValuePair<string, object> valuePair in clipboardCache)
{
Clipboard.SetData(valuePair.Key, valuePair.Value);
Thread.Sleep(100);
}
Console.ReadLine();
}
Run Code Online (Sandbox Code Playgroud) 我是LINQ的新手,迫切需要快速完成这个项目.我需要使用每个MPrice的今天日期的正确价格信息返回id.任何建议都非常感谢!以下是XML的示例:
<Pricing>
<MPrice>
<Id>0079</Id>
<Price>
<Price>31.25</Price>
<StartDt>2009-8-01</StartDt>
<EndDt>2009-08-26</EndDt>
</Price>
<Price>
<ListPrice>131.25</ListPrice>
<StartDt>2009-08-26</StartDt>
<EndDt>9999-12-31</EndDt>
</Price>
</MPrice>
<MPrice>
<Id>0081</Id>
<Price>
<Price>131.25</Price>
<StartDt>2009-8-01</StartDt>
<EndDt>2009-08-26</EndDt>
</Price>
<Price>
<ListPrice>231.25</ListPrice>
<StartDt>2009-08-26</StartDt>
<EndDt>9999-12-31</EndDt>
</Price>
</MPrice>
</Pricing>
Run Code Online (Sandbox Code Playgroud) 这个是给Grails用户的.我在grails - 用户邮件列表上问过它,但我想,因为我已经和我斗争了几天,所以我应该尽可能地扩大网络.
我在尝试模拟引用这两个对象的另一个对象(不同类型)中相同类型的两个对象之间的关系时遇到了一些困难.
作为我正在尝试做的一个例子,假设你在建立家庭成员之间的关系.任何给定的关系"属于"两个不同的家庭成员.所以:
class Person {
hasMany[relationships: Relationship]
static mappedBy = [relationships:'p1', relationships:'p2']
}
class Relationship {
Person p1
Person p2
String natureOfRelationship // for example, "cousins"
static belongsTo = [p1: Person, p2: Person]
}
Run Code Online (Sandbox Code Playgroud)
这里的意图是如果删除p1或p2,则删除将级联到hasMany映射中的所有Relationship对象.相反,每次尝试时,我最终都会遇到外键违规.我尝试使用文档中介绍的"cascade"属性:
http://grails.org/doc/1.0.x/guide/single.html#5.5.2.9%20Custom%20Cascade%20Behaviour
所以我想我会把它添加到Person类:
static mapping = {
relationships cascade:'delete'
}
Run Code Online (Sandbox Code Playgroud)
我也没有任何运气.
我还查看了Grails生成的devDB.script文件,看看它是如何在Relationship上设置外键的.如果我手动将"ON DELETE CASCADE"添加到两个外键约束,那么它工作正常,但显然对自动生成的数据库脚本进行手动编辑并不是最强大的解决方案.理想情况下,我希望能够使用GORM指定该行为.
那么我最好的选择是什么呢?有没有办法强制多个外键/所有者的级联删除?我是否需要在Person上使用onDelete操作手动执行此操作?我是否需要进入Hibernate配置,或者我可以用Grails/GORM进行某种方式吗?
非常感谢您的时间和任何可以提供的帮助.
iis 7使用什么方法/算法来生成etags.我正在寻找确切的,而不是'他们在日期使用校验和'
这留下了很多问题.校验和的算法,日期,日期的格式(短,utc,'mm-dd-yyyy ttad','MMDDDYYY'等)
提前致谢.我已经在网上搜索,找不到这个答案.
我在各种网站上使用一些半透明的PNG作为背景图像.这些通常类似于具有30%不透明白色层的1x1图像.
我注意到Mobile Safari没有正确显示它们,给它们一个更深/灰色的色调.
这是一个MobileSafari错误(我无法想象),还是我需要对我的页面或PNG做一些不同的事情?
(以下是我创建PNG的方法:在Photoshop中,创建一个1x1透明画布.在第1层中绘制一个白色矩形.将不透明度设置为30%,将Web保存为24位PNG,具有透明度.)
我对postgesql非常感兴趣,因为他们有一个uuid数据类型.我在SO周围进行了搜索,许多人说Postgres更难维护和管理.为什么是这样?是因为postgres需要更多配置,是因为postgres没有GUI吗?