实现WPF C#Visual Studio 2015脚本的最简单方法

本文关键字:最简单 方法 脚本 2015 WPF C#Visual Studio 实现 | 更新日期: 2023-09-27 18:28:11

我想了解如何将脚本支持添加到我正在Visual Studio 2015上进行的WPF C#项目中。我想做的一件事是能够更改该脚本中的用户控件属性。我一直在尝试Roslyn C#,我读了一些关于IronPython和PowerShell工具的东西。但是,所有这些信息并没有真正的帮助。

那么,你有一个简单的答案吗?比如,在Visual Studio 2015 C#WPF应用程序中执行能够更改项目中用户控件属性的脚本的最简单方法是什么?

如有任何帮助,我们将不胜感激。

谢谢,卢卡斯。

实现WPF C#Visual Studio 2015脚本的最简单方法

T4模板可以提供帮助,但它们的可扩展性不如Roslyn。

我发现了一篇关于如何轻松实现IronPython以及如何在Python脚本中访问用户控件的好文章,这样你就可以在那里更改不同的控件属性,甚至创建它们!链接如下:http://www.codeproject.com/Articles/602112/Scripting-NET-Applications-with-IronPython

我认为在应用程序中嵌入powershell或F#交互式应该很简单,当我们在网上搜索时,有很多例子。问题是,我们在Powershell和F#中编写脚本是否舒服?

在我的应用程序中,我提供了一个C#编辑器,并使用与框架(Microsoft.Csharp,System.CodeDom)一起安装的标准.Net编译器API将脚本编译为静态方法(我将其用作函数)。这会生成一个临时dll,可能无法正确地称为脚本。实现是直接的,或多或少符合您的期望——我必须为用户提供一种方法来指定引用和命名空间,然后生成源文件,将其编译为程序集,然后调用静态类的成员。上述技术工作得很好,因为应用程序具有扩展点,这些扩展点非常适合具有特定定义良好结构的用户定义代码(您可能有类似的定义良好的需求,也许不需要完整的脚本)。

另一方面,我正在考虑提供一个"超级用户"控制台,在那里应用程序可以由脚本驱动,在这种情况下,我将使用Powershell或F-sharp交互式(我倾向于F#)。我不认为实现特别复杂,但如果控制不好,这些东西很容易导致应用程序崩溃或损坏应用程序数据,而且我的用户不太可能从脚本中获利,因为它是程序员环境。