次のように呼び出すことができるカスタムコマンドレットがあります。
Get-Info ".\somefile.txt"
私のコマンドレットコードは次のようになります。
[Parameter(Mandatory = true, Position = 0)]
public string FilePath { get; set; }
protected override void ProcessRecord()
{
using (var stream = File.Open(FilePath))
{
// Do work
}
}
ただし、コマンドを実行すると、次のエラーが発生します。
Could not find file 'C:\Users\Philip\somefile.txt'
からこのコマンドレットを実行していませんC:\Users\Philip
。何らかの理由で、私のコマンドレットは作業ディレクトリを検出しないため、このようなローカルファイルは機能しません。C#で、ローカルの「。\」ファイルパスが指定されている場合に正しいファイルパスを検出するための推奨される方法は何ですか?