惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Project Zero
Project Zero
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
P
Proofpoint News Feed
量子位
K
Kaspersky official blog
S
SegmentFault 最新的问题
博客园 - 叶小钗
博客园 - 司徒正美
酷 壳 – CoolShell
酷 壳 – CoolShell
Hugging Face - Blog
Hugging Face - Blog
博客园 - Franky
F
Fortinet All Blogs
Scott Helme
Scott Helme
D
Darknet – Hacking Tools, Hacker News & Cyber Security
C
Cisco Blogs
T
Tenable Blog
U
Unit 42
S
Schneier on Security
T
The Blog of Author Tim Ferriss
G
Google Developers Blog
C
Cybersecurity and Infrastructure Security Agency CISA
V
Visual Studio Blog
The Hacker News
The Hacker News
Jina AI
Jina AI
Stack Overflow Blog
Stack Overflow Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
I
Intezer
Cyberwarzone
Cyberwarzone
Know Your Adversary
Know Your Adversary
V
Vulnerabilities – Threatpost
L
LINUX DO - 热门话题
Spread Privacy
Spread Privacy
T
The Exploit Database - CXSecurity.com
V
V2EX
Help Net Security
Help Net Security
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 聂微东
大猫的无限游戏
大猫的无限游戏
www.infosecurity-magazine.com
www.infosecurity-magazine.com
PCI Perspectives
PCI Perspectives
腾讯CDC
Webroot Blog
Webroot Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
N
News | PayPal Newsroom
Recorded Future
Recorded Future
D
DataBreaches.Net
阮一峰的网络日志
阮一峰的网络日志
C
Check Point Blog

博客园 - 不老仙翁

DataSet中DataRelation有个小BUG 招聘信息(沈阳) 冥王星归位 宇宙的最初三分种(转) 也谈谈ORM 要看世界杯了 试用mapxtreme 2005 v6.6中的一个问题 关于软件开发团队的一些思考 程序员需要天真,写在六一 一个足球狂的军规:世界杯女友/老婆准则 这个项目团队能少了谁? 需求中的一例 vs2005中的小bug 继续说需求 vs 2005的中文版终于出来了 大话需求分析中的方法论(4) 大话需求分析中的方法论(3) 大话需求分析中的方法论(2) 大话需求分析中的方法论(1)
在aspnet中使用wwf的第一个实践
不老仙翁 · 2006-01-03 · via 博客园 - 不老仙翁


在winfx的主页上看到了aspnet form做wwf宿主的例子,由于本人刚刚删除了vs2005的bate2版以及wwf,装上了vs2005的professional,呵呵,只好按照提示,前装上了winfx的sdk,然后装上了Visual Studio 2005 Extensions for Windows Workflow Foundation Beta 1.2,运行了vs2005,发现了wwf的工程模板,只是与bate1有些变化,看来还是在不断进步中。
先是在本机上的sql server 2005建了runtime使用的三个数据库:workflowpersistence,workflowtimer,workflowtracking,然后在C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Windows Workflow Foundation\SQL(你自己的系统目录下)执行了所有的sql命令,先schema,后logic,呵呵。只是没空好好研究这几个家伙。

按网上例子的思路,开始了这个例子的实践:
建一个顺序工作流库的工程,我将其命名为mywebwwf,在workflow1中加入一个code活动,在code的executecode属性中写上“code_Excute”,在workflow1的代码中,定义一个字符串变量results,并在code_Excute方法中写下如下代码:
 this.results = string.Format("你好 {0} {1}", this.Parameters["FirstName"].Value.ToString(), this.Parameters["LastName"].Value.ToString());

 在workflow1的属性parameters中加入三个参数,其中FirstName与LastName为输入型string, Results为输出型string,其值(value)为变量results;
编译一下,形成dll文件。
在解决方案中加入一个新的web form项目,将其设为起动项目,然后加入mywebwwf.dll的引用。
可以开始写入网页代码了,先在网页窗体上加上两个textbox,当然可以加上相应的label做标题。
然后加上一个button做命令,
下面加上一个label做输出,并将其命名为:lblResults
在代码中还要加上事件:
WorkflowRuntime_WorkflowCompleted
下面是default.aspx的代码部份:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Collections.Generic;
using System.Workflow.Runtime;
using System.Workflow.Runtime.Hosting.Web;


public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void button1_Click(object sender, EventArgs e)
    {
        this.StartWorkflow();
    }

    private void StartWorkflow()
    {
        // Define the parametes for the
        Dictionary<string, object> parameters = new Dictionary<string, object>();
        parameters.Add("FirstName", this.TextBox1.Text);
        parameters.Add("LastName", this.TextBox2.Text);


        // Get a reference to the Workflow Runtime through the WorkflowWebHostingModule
        // Http Module. 
        //
        // NOTE:  This requires the configuration section to be named "WorkflowRuntime".
        WorkflowRuntime workflowRuntime = WorkflowRequestContext.Current.WorkflowRuntime;

        // Attach to the WorkflowCompleted event
        workflowRuntime.WorkflowCompleted +=
            new EventHandler<WorkflowCompletedEventArgs>(WorkflowRuntime_WorkflowCompleted);

        // Start the Workflow1
        WorkflowInstance workflowInstance = workflowRuntime.StartWorkflow(
            typeof(mywebwwf.Workflow1), parameters);
    }


    void WorkflowRuntime_WorkflowCompleted(object sender, System.Workflow.Runtime.WorkflowCompletedEventArgs e)
    {
        this.lblResults.Text = e.OutputParameters["Results"].ToString();
    }
}
运行一下,成功了,是不是很简单。