我阅读了很多关于将vars从C#传递到powershell脚本的内容,但我反过来也很感兴趣.
这里我有这个代码在我的powershell脚本中创建一个Type:
Add-Type @'
public class Node
{
public string Type;
public string VM_Name;
public string VM_IP;
public string Hostname;
}
'@
$vm1 = New-Object Node
$vm2 = New-Object Node
$vm3 = New-Object Node
$vm4 = New-Object Node
Run Code Online (Sandbox Code Playgroud)
在这段代码之后我有C#代码:
$sourceCode = @'
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void InitializeComponent()
{
}
}
'@
Run Code Online (Sandbox Code Playgroud)
我怎样才能在上面的C#代码中访问$ vm1,2,3,4?
我有一个方法
public Action FirstAction(object data)
{
}
Run Code Online (Sandbox Code Playgroud)
我必须将两个变量传递给此类,例如int,它们是不同类型string的对象或任何其他类型的对象.
我读过我能做到的
FirstAction( new{int a, string b} )
Run Code Online (Sandbox Code Playgroud)
我的问题是如何在FirstAction方法中访问两个分离的变量?
注意:我无法将object参数更改为object[]或params object[]; 它需要使用当前签名完成.
我需要创建一个可以连续读取文件的脚本,如果有一行带有文本,则调用一个函数.
我正在想办法用一条线来做这件事
Get-Content -Path $logFile -wait | ?{$_-match "$filter"}
Run Code Online (Sandbox Code Playgroud)
但如果线路确实符合标准,我不知道如何调用函数.
那可行吗?或者我应该像循环一样在每个周期读取文件,如果有匹配退出循环?