掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本申请涉及工作流程管理技术领域,尤其涉及一种XAML文件修改方法、装置、计算机设备及存储介质。

背景技术

随着计算机技术、网络技术和数据库技术的发展和普及,各类企业及个人信息化应用层出不穷,工作流(WorkFlow)应运而生。工作流就是工作流程的计算模型,即将工作流程中的工作如何前后组织在一起的逻辑和规则在计算机中以恰当的模型进行表示并对其实施计算。工作流要解决的主要问题是:为实现某个业务目标,在多个参与者之间,利用计算机,按某种预定规则自动传递文档、信息或者任务。采用工作流软件,使用者只需在电脑上填写有关表单,任务会按照定义好的流程自动往下进行,下一级审批者将会收到相关资料,并可以根据需要修改、跟踪、管理、查询、统计、打印等,相对于工作流程的传统实现方式,大大提高了效率,实现了知识管理,提升了公司的核心竞争力。

现有一种工作流解析方法,用户通过RPA设计器的操作界面进行组件添加等操作,该RPA设计器在自动化流程保存后生成自动化流程XAML文件,该自动化流程文件XAML能在微软的Workflow下运行来实现自动化的目的。

然而,申请人发现,传统的工作流解析方法必须严格通过微软提供的WorkflowDesigner来生成XAML文件,无法在程序内部友好的修改XAML流程文件再产出格式正确、被Workflow支持的XAML文件。

发明内容

本申请实施例的目的在于提出一种XAML文件修改方法、装置、计算机设备及存储介质,以解决传统的工作流解析方法无法在程序内部友好的修改XAML流程文件。

为了解决上述技术问题,本申请实施例提供一种XAML文件修改方法,采用了如下所述的技术方案:

接收用户终端发送的RPA流程解析请求,其中,所述RPA流程解析请求携带有运行于微软Workflow的XAML流程引擎文件;

调用解析器,并根据所述解析器对所述XAML流程引擎文件进行解析操作,得到树状数据模型;

根据自定义设计器界面展示所述树状数据模型,以便用户根据所述自定义设计器界面修改所述树状数据模型的数据;

当所述用户完成所述修改操作后,根据所述自定义设计器界面获取用户修改后的自定义树状数据模型;

根据所述解析器对所述自定义树状数据模型进行转化操作,得到运行于所述微软Workflow的目标XAML流程引擎文件。

进一步的,所述调用解析器,并根据所述解析器对所述XAML流程引擎文件进行解析操作,得到树状数据模型的步骤,具体包括下述步骤:

读取类工厂,在所述类工厂中获取与所述XAML流程引擎文件的节点名称信息相对应的解析类;

调用所述解析类的解析接口获取所述节点名称信息对应的节点数据;

对所述节点数据进行封装操作,得到所述树状数据模型;

进一步的,在所述读取类工厂,在所述类工厂中获取与所述XAML流程引擎文件的节点名称信息相对应的解析类的步骤之前,还包括下述步骤:

调用可扩展标记语言文件,并根据所述可扩展标记语言文件加载所述XAML流程引擎文件,得到所述节点名称信息。

进一步的,所述根据所述解析器对所述自定义树状数据模型进行转化操作,得到运行于所述微软Workflow的目标XAML流程引擎文件的步骤,具体包括下述步骤:

获取定义好的字符序列变量;

遍历所述自定义树状数据模型列表,得到数据模型类别;

获取与所述数据模型类别相对应的Polygon.ToXaml方法;

基于所述Polygon.ToXaml方法获取所述自定义树状数据模型的XAML字符串;

将所述XAML字符串存储至所述字符序列变量中,得到目标字符序列变量;

基于ToString方法对所述目标字符序列变量进行字符串格式化处理,得到所述目标XAML流程引擎文件。

为了解决上述技术问题,本申请实施例还提供一种XAML文件修改装置,采用了如下所述的技术方案:

请求接收模块,用于接收用户终端发送的RPA流程解析请求,其中,所述RPA流程解析请求携带有运行于微软Workflow的XAML流程引擎文件;

解析模块,用于调用解析器,并根据所述解析器对所述XAML流程引擎文件进行解析操作,得到树状数据模型;

界面展示模块,用于根据自定义设计器界面展示所述树状数据模型,以便用户根据所述自定义设计器界面修改所述树状数据模型的数据;

数据接收模块,用于当所述用户完成所述修改操作后,根据所述自定义设计器界面获取用户修改后的自定义树状数据模型;

转化模块,用于根据所述解析器对所述自定义树状数据模型进行转化操作,得到运行于所述微软Workflow的目标XAML流程引擎文件。

进一步的,所述解析模块包括:

解析类获取子模块,用于读取类工厂,在所述类工厂中获取与所述XAML流程引擎文件的节点名称信息相对应的解析类;

节点数据获取子模块,用于调用所述解析类的解析接口获取所述节点名称信息对应的节点数据;

封装子模块,用于对所述节点数据进行封装操作,得到所述树状数据模型。

进一步的,所述解析模块还包括:

节点名称获取子模块,用于调用可扩展标记语言文件,并根据所述可扩展标记语言文件加载所述XAML流程引擎文件,得到所述节点名称信息。

进一步的,所述转化模块包括:

字符序列变量获取子模块,用于获取定义好的字符序列变量;

模型遍历子模块,用于遍历所述自定义树状数据模型列表,得到数据模型类别;

类别方法获取子模块,用于获取与所述数据模型类别相对应的Polygon.ToXaml方法;

字符串获取子模块,用于基于所述Polygon.ToXaml方法获取所述自定义树状数据模型的XAML字符串;

字符串存储子模块,用于将所述XAML字符串存储至所述字符序列变量中,得到目标字符序列变量;

格式化子模块,用于基于ToString方法对所述目标字符序列变量进行字符串格式化处理,得到所述目标XAML流程引擎文件。

为了解决上述技术问题,本申请实施例还提供一种计算机设备,采用了如下所述的技术方案:

包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如上所述的XAML文件修改方法的步骤。

为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,采用了如下所述的技术方案:

所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如上所述的XAML文件修改方法的步骤。

本申请提供了一种XAML文件修改方法,包括:接收用户终端发送的RPA流程解析请求,其中,所述RPA流程解析请求携带有运行于微软Workflow的XAML流程引擎文件;调用解析器,并根据所述解析器对所述XAML流程引擎文件进行解析操作,得到树状数据模型;根据自定义设计器界面展示所述树状数据模型,以便用户根据所述自定义设计器界面修改所述树状数据模型的数据;当所述用户完成所述修改操作后,根据所述自定义设计器界面获取用户修改后的自定义树状数据模型;根据所述解析器对所述自定义树状数据模型进行转化操作,得到运行于所述微软Workflow的目标XAML流程引擎文件。与现有技术相比,本申请能够解释运行于微软Workflow的XAML流程引擎文件,产出程序内部自定义的树状数据模型,能根据自定义的树状数据模型生成Workflow Designer支持的XAML文件,通过对该解析器生成树状数据模型的修改,达到友好修改XAML文件的目的。

附图说明

为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请可以应用于其中的示例性系统架构图;

图2是本申请实施例一提供的XAML文件修改方法的实现流程图;

图3是图2中步骤S202的一种具体实施方式的流程图;

图4是图3中步骤S301之前的一种具体实施方式的流程图;

图5是图2中步骤S205的一种具体实施方式的流程图;

图6是本申请实施例二提供的XAML文件修改装置的结构示意图;

图7是根据本申请的计算机设备的一个实施例的结构示意图。

具体实施方式

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。

如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。

终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。

服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。

需要说明的是,本申请实施例所提供的XAML文件修改方法一般由服务器/终端设备执行,相应地,XAML文件修改装置一般设置于服务器/终端设备中。

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

实施例一

继续参考图2,示出了本申请实施例一提供的XAML文件修改方法的实现流程图,为了便于说明,仅示出与本申请相关的部分。

上述的XAML文件修改方法,包括:步骤S201、步骤S202、步骤S203、步骤S204以及步骤S205。

在步骤S201中,接收用户终端发送的RPA流程解析请求,其中,RPA流程解析请求携带有运行于微软Workflow的XAML流程引擎文件。

在本申请实施例中,RPA指的是机器人流程自动化(Robotic ProcessAutomation),主要的功能就是将工作信息与业务交互通过机器人来按照自先设计的流程去执行。这样如果当工作信息与业务交互过多时,RPA就可以高效解决这些复杂的流程,节约人工成本。

在本申请实施例中,Workflow指的是工作流,即“业务过程的部分或整体在计算机应用环境下的自动化”。是对工作流程及其各操作步骤之间业务规则的抽象、概括描述。在计算机中,工作流属于计算机支持的协同工作(CSCW)的一部分。后者是普遍地研究一个群体如何在计算机的帮助下实现协同工作的。

在本申请实施例中,XAML是eXtensible Application Markup Language的英文缩写,相应的中文名称为可扩展应用程序标记语言,它是微软公司为构建应用程序用户界面而创建的一种新的描述性语言。XAML提供了一种便于扩展和定位的语法来定义和程序逻辑分离的用户界面,而这种实现方式和ASP.NET中的"代码后置"模型非常类似。XAML是一种解析性的语言,尽管它也可以被编译。它的优点是简化编程式上的用户创建过程,应用时要添加代码和配置等。

在步骤S202中,调用解析器,并根据解析器对XAML流程引擎文件进行解析操作,得到树状数据模型。

在本申请实施例中,根据解析器对XAML流程引擎文件进行解析操作可以是读取类工厂,在类工厂中获取与XAML流程引擎文件的节点名称信息相对应的解析类;调用解析类的解析接口获取节点名称信息对应的节点数据;对节点数据进行封装操作,以实现上述解析操作。

在步骤S203中,根据自定义设计器界面展示树状数据模型,以便用户根据自定义设计器界面修改树状数据模型的数据。

在本申请实施例中,解析器的显示单元为B端自动化流程设计器用户输入界面,该用户输入界面可以查看微软Workflow自动化流程XAML文件;通过解析器解析自动化流程XAML文件返回的自定义树状数据模型,显示自定义设计器界面。

在本申请实施例中,用户可以根据自定义设计器界面修改微软Workflow自动化流程XAML文件,基于用户操作设计器界面,修改自定义树状数据模型数据。

在步骤S204中,当用户完成修改操作后,根据自定义设计器界面获取用户修改后的自定义树状数据模型。

在本申请实施例中,当用户修改完微软Workflow自动化流程XAML文件后,即可获取用户修改后的自定义树状数据模型。

在步骤S205中,根据解析器对自定义树状数据模型进行转化操作,得到运行于微软Workflow的目标XAML流程引擎文件。

在本申请实施例中,转化操作可以是获取定义好的字符序列变量;遍历自定义树状数据模型列表,得到数据模型类别;获取与数据模型类别相对应的Polygon.ToXaml方法;基于Polygon.ToXaml方法获取自定义树状数据模型的XAML字符串;将XAML字符串存储至字符序列变量中,得到目标字符序列变量;基于ToString方法对目标字符序列变量进行字符串格式化处理,得到目标XAML流程引擎文件。

在本申请实施例中,提供了一种XAML文件修改方法,包括:接收用户终端发送的RPA流程解析请求,其中,RPA流程解析请求携带有运行于微软Workflow的XAML流程引擎文件;调用解析器,并根据解析器对XAML流程引擎文件进行解析操作,得到树状数据模型;根据自定义设计器界面展示树状数据模型,以便用户根据自定义设计器界面修改树状数据模型的数据;当用户完成修改操作后,根据自定义设计器界面获取用户修改后的自定义树状数据模型;根据解析器对自定义树状数据模型进行转化操作,得到运行于微软Workflow的目标XAML流程引擎文件。与现有技术相比,本申请能够解释运行于微软Workflow的XAML流程引擎文件,产出程序内部自定义的树状数据模型,能根据自定义的树状数据模型生成Workflow Designer支持的XAML文件,通过对该解析器生成树状数据模型的修改,达到友好修改XAML文件的目的。

继续参阅图3,示出了图2中步骤S202的一种具体实施方式的流程图,为了便于说明,仅示出与本申请相关的部分。

在本实施例的一些可选的实现方式中,步骤S202具体包括:步骤S301、步骤S302以及步骤S303。

在步骤S301中,读取类工厂,在类工厂中获取与XAML流程引擎文件的节点名称信息相对应的解析类。

在步骤S302中,调用解析类的解析接口获取节点名称信息对应的节点数据。

在步骤S303中,对节点数据进行封装操作,得到树状数据模型。

在本申请实施例中,输入微软Workflow为流程XAML文件;遍历文档所有节点,通过节点名称从类工厂中获取该节点的解析类,如Sequence节点,通过节点名称Sequence从类工厂中获取Sequence的解析类;通过调用解析类的解析接口Read方法返回包含该节点所有信息的数据;封装节点的信息数据,形成自定义名称的数据模型;当完成其他节点的解析后,最后产生与XAML文档结构一致,包含节点所有信息的自定义数据模型;该解析器最终输出为自定义树状(结构同于XAML文档结构)数据模型。

继续参阅图4,示出了图3中步骤S301之前的一种具体实施方式的流程图,为了便于说明,仅示出与本申请相关的部分。

在本实施例的一些可选的实现方式中,在步骤S301之前,还包括:步骤S401。

在步骤S401中,调用可扩展标记语言文件,并根据可扩展标记语言文件加载XAML流程引擎文件,得到节点名称信息。

继续参阅图5,示出了图2中步骤S205的一种具体实施方式的流程图,为了便于说明,仅示出与本申请相关的部分。

在本实施例的一些可选的实现方式中,步骤S205具体包括:

在步骤S501中,获取定义好的字符序列变量。

在步骤S502中,遍历自定义树状数据模型列表,得到数据模型类别。

在步骤S503中,获取与数据模型类别相对应的Polygon.ToXaml方法。

在步骤S504中,基于Polygon.ToXaml方法获取自定义树状数据模型的XAML字符串。

在步骤S505中,将XAML字符串存储至字符序列变量中,得到目标字符序列变量。

在步骤S506中,基于ToString方法对目标字符序列变量进行字符串格式化处理,得到目标XAML流程引擎文件。

在本申请实施例中,该实现为解析XAML文件产出自定义数据模型的反向过程。

①、解析器的输入为自定义树状数据模型;

②、定义StringBuilder变量,用于存放过程中的结果;

③、遍历数据模型树状列表;

④、在数据模型的类型,调用类型的ToXAML方法获取XAML字符串并保存到StringBuilder变量,如数据模型中Sequence类,使用该类的ToXaml方法获取XAML文本字符串,并保存到StringBuilder;

⑤、其他数据模型类型反向过程步骤,参考步骤④;

⑥、最后存放变量StringBuilder使用ToString方法等到XAML内容的字符串;

⑦、该过程解析器的输出为Workflow流程XAML文件文本。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,该计算机可读指令可存储于一计算机可读取存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。

应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

实施例二

进一步参考图6,作为对上述图2所示方法的实现,本申请提供了一种XAML文件修改装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。

如图6所示,本实施例的XAML文件修改装置200包括:请求接收模块210、解析模块220、界面展示模块230、数据接收模块240以及转化模块250。

其中:

请求接收模块210,用于接收用户终端发送的RPA流程解析请求,其中,RPA流程解析请求携带有运行于微软Workflow的XAML流程引擎文件;

解析模块220,用于调用解析器,并根据解析器对XAML流程引擎文件进行解析操作,得到树状数据模型;

界面展示模块230,用于根据自定义设计器界面展示树状数据模型,以便用户根据自定义设计器界面修改树状数据模型的数据;

数据接收模块240,用于当用户完成修改操作后,根据自定义设计器界面获取用户修改后的自定义树状数据模型;

转化模块250,用于根据解析器对自定义树状数据模型进行转化操作,得到运行于微软Workflow的目标XAML流程引擎文件。

在本申请实施例中,RPA指的是机器人流程自动化(Robotic ProcessAutomation),主要的功能就是将工作信息与业务交互通过机器人来按照自先设计的流程去执行。这样如果当工作信息与业务交互过多时,RPA就可以高效解决这些复杂的流程,节约人工成本。

在本申请实施例中,Workflow指的是工作流,即“业务过程的部分或整体在计算机应用环境下的自动化”。是对工作流程及其各操作步骤之间业务规则的抽象、概括描述。在计算机中,工作流属于计算机支持的协同工作(CSCW)的一部分。后者是普遍地研究一个群体如何在计算机的帮助下实现协同工作的。

在本申请实施例中,XAML是eXtensible Application Markup Language的英文缩写,相应的中文名称为可扩展应用程序标记语言,它是微软公司为构建应用程序用户界面而创建的一种新的描述性语言。XAML提供了一种便于扩展和定位的语法来定义和程序逻辑分离的用户界面,而这种实现方式和ASP.NET中的"代码后置"模型非常类似。XAML是一种解析性的语言,尽管它也可以被编译。它的优点是简化编程式上的用户创建过程,应用时要添加代码和配置等。

在本申请实施例中,根据解析器对XAML流程引擎文件进行解析操作可以是读取类工厂,在类工厂中获取与XAML流程引擎文件的节点名称信息相对应的解析类;调用解析类的解析接口获取节点名称信息对应的节点数据;对节点数据进行封装操作,以实现上述解析操作。

在本申请实施例中,解析器的显示单元为B端自动化流程设计器用户输入界面,该用户输入界面可以查看微软Workflow自动化流程XAML文件;通过解析器解析自动化流程XAML文件返回的自定义树状数据模型,显示自定义设计器界面。

在本申请实施例中,用户可以根据自定义设计器界面修改微软Workflow自动化流程XAML文件,基于用户操作设计器界面,修改自定义树状数据模型数据。

在本申请实施例中,当用户修改完微软Workflow自动化流程XAML文件后,即可获取用户修改后的自定义树状数据模型。

在本申请实施例中,转化操作可以是获取定义好的字符序列变量;遍历自定义树状数据模型列表,得到数据模型类别;获取与数据模型类别相对应的Polygon.ToXaml方法;基于Polygon.ToXaml方法获取自定义树状数据模型的XAML字符串;将XAML字符串存储至字符序列变量中,得到目标字符序列变量;基于ToString方法对目标字符序列变量进行字符串格式化处理,得到目标XAML流程引擎文件。

在本申请实施例中,提供了一种XAML文件修改装置200,包括:请求接收模块210,用于接收用户终端发送的RPA流程解析请求,其中,RPA流程解析请求携带有运行于微软Workflow的XAML流程引擎文件;解析模块220,用于调用解析器,并根据解析器对XAML流程引擎文件进行解析操作,得到树状数据模型;界面展示模块230,用于根据自定义设计器界面展示树状数据模型,以便用户根据自定义设计器界面修改树状数据模型的数据;数据接收模块240,用于当用户完成修改操作后,根据自定义设计器界面获取用户修改后的自定义树状数据模型;转化模块250,用于根据解析器对自定义树状数据模型进行转化操作,得到运行于微软Workflow的目标XAML流程引擎文件。与现有技术相比,本申请能够解释运行于微软Workflow的XAML流程引擎文件,产出程序内部自定义的树状数据模型,能根据自定义的树状数据模型生成Workflow Designer支持的XAML文件,通过对该解析器生成树状数据模型的修改,达到友好修改XAML文件的目的。

在本实施例的一些可选的实现方式中,上述解析模块220包括:

解析类获取子模块,用于读取类工厂,在类工厂中获取与XAML流程引擎文件的节点名称信息相对应的解析类;

节点数据获取子模块,用于调用解析类的解析接口获取节点名称信息对应的节点数据;

封装子模块,用于对节点数据进行封装操作,得到树状数据模型。

在本申请实施例中,输入微软Workflow为流程XAML文件;遍历文档所有节点,通过节点名称从类工厂中获取该节点的解析类,如Sequence节点,通过节点名称Sequence从类工厂中获取Sequence的解析类;通过调用解析类的解析接口Read方法返回包含该节点所有信息的数据;封装节点的信息数据,形成自定义名称的数据模型;当完成其他节点的解析后,最后产生与XAML文档结构一致,包含节点所有信息的自定义数据模型;该解析器最终输出为自定义树状(结构同于XAML文档结构)数据模型。

在本实施例的一些可选的实现方式中,上述解析模块220还包括:

节点名称获取子模块,用于调用可扩展标记语言文件,并根据可扩展标记语言文件加载XAML流程引擎文件,得到节点名称信息。

在本实施例的一些可选的实现方式中,上述转化模块250包括:

字符序列变量获取子模块,用于获取定义好的字符序列变量;

模型遍历子模块,用于遍历自定义树状数据模型列表,得到数据模型类别;

类别方法获取子模块,用于获取与数据模型类别相对应的Polygon.ToXaml方法;

字符串获取子模块,用于基于Polygon.ToXaml方法获取自定义树状数据模型的XAML字符串;

字符串存储子模块,用于将XAML字符串存储至字符序列变量中,得到目标字符序列变量;

格式化子模块,用于基于ToString方法对目标字符序列变量进行字符串格式化处理,得到目标XAML流程引擎文件。

在本申请实施例中,该实现为解析XAML文件产出自定义数据模型的反向过程。

①、解析器的输入为自定义树状数据模型;

②、定义StringBuilder变量,用于存放过程中的结果;

③、遍历数据模型树状列表;

④、在数据模型的类型,调用类型的ToXAML方法获取XAML字符串并保存到StringBuilder变量,如数据模型中Sequence类,使用该类的ToXaml方法获取XAML文本字符串,并保存到StringBuilder;

⑤、其他数据模型类型反向过程步骤,参考步骤④;

⑥、最后存放变量StringBuilder使用ToString方法等到XAML内容的字符串;

⑦、该过程解析器的输出为Workflow流程XAML文件文本。

为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图7,图7为本实施例计算机设备基本结构框图。

所述计算机设备300包括通过系统总线相互通信连接存储器310、处理器320、网络接口330。需要指出的是,图中仅示出了具有组件310-330的计算机设备300,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。

所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。

所述存储器310至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器310可以是所述计算机设备300的内部存储单元,例如该计算机设备300的硬盘或内存。在另一些实施例中,所述存储器310也可以是所述计算机设备300的外部存储设备,例如该计算机设备300上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器310还可以既包括所述计算机设备300的内部存储单元也包括其外部存储设备。本实施例中,所述存储器310通常用于存储安装于所述计算机设备300的操作系统和各类应用软件,例如XAML文件修改方法的计算机可读指令等。此外,所述存储器310还可以用于暂时地存储已经输出或者将要输出的各类数据。

所述处理器320在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器320通常用于控制所述计算机设备300的总体操作。本实施例中,所述处理器320用于运行所述存储器310中存储的计算机可读指令或者处理数据,例如运行所述XAML文件修改方法的计算机可读指令。

所述网络接口330可包括无线网络接口或有线网络接口,该网络接口330通常用于在所述计算机设备300与其他电子设备之间建立通信连接。

本申请提供的计算机设备,能够解释运行于微软Workflow的XAML流程引擎文件,产出程序内部自定义的树状数据模型,能根据自定义的树状数据模型生成WorkflowDesigner支持的XAML文件,通过对该解析器生成树状数据模型的修改,达到友好修改XAML文件的目的。

本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令可被至少一个处理器执行,以使所述至少一个处理器执行如上述的XAML文件修改方法的步骤。

本申请提供的计算机可读存储介质,能够解释运行于微软Workflow的XAML流程引擎文件,产出程序内部自定义的树状数据模型,能根据自定义的树状数据模型生成Workflow Designer支持的XAML文件,通过对该解析器生成树状数据模型的修改,达到友好修改XAML文件的目的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。

显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。

技术分类

06120115978700