powershell - 在 Powershell 中加载 F# 程序集并创建记录表达式

标签 powershell f#

我有一个 Powershell脚本。我成功加载了C#程序集并使用了包含在该程序集中的一个类中的方法:[MyCSharpAssembly.MyClass]::MyAssemblyMethod() .然而,这对 F# 不起作用。 .

有可能吗?

我有一个名为 Data.dll 的程序集它有一个名为 People.fs 的模块和 People.fs定义记录类型:

module People =  
    type Teacher = {
        FirstName:string,
        LastName:string,
        Age:int }

我想加载 Data.dll组装到我的Powershell脚本,然后在脚本中创建一个教师类型的记录表达式,以便在该脚本的其他一些计算中使用它。

如果可以做到,我该怎么做?

最佳答案

F# 记录编译为只读类,因此您应该能够使用 New-Object 创建值,将值作为构造函数参数传递。

New-Object Teacher("Jane", "Doe", 27)

您可能必须传递完全限定名称而不是 Teacher .

关于powershell - 在 Powershell 中加载 F# 程序集并创建记录表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32973438/

相关文章:

windows - Chocolatey 和 powershell : pin and unpin programs from task bar and file associations

F#:双反引号值名称与函数名称冲突?

f# - 如何使用 .Net Core 和 VSCode 在 Debug模式下执行测试?

f# - 为什么使用 Xunit 的 F# 在断言字符串相等时需要类型信息

powershell - 合并文本文件并添加文件名和行号 - Powershell

powershell - 撤消 Conda Powershell 提示修改

.net - 我可以在Powershell中使用System.Core.dll/System.Collections.Generic.HashSet吗?

powershell - ErrorVariable无法使用null或空参数

recursion - 为什么这个 F# 内部函数不是尾递归的?

entity-framework - Linq 包含 f# 风格管道的辅助函数