Hãy thử cách này:Làm cách nào để xác thực tham số chức năng PowerShell cho phép chuỗi rỗng?
function f1
{
param(
[Parameter(Mandatory=$true,ValueFromPipelineByPropertyName=$true)]
[string]
$Text
)
$text
}
function f2
{
param(
[Parameter(Mandatory=$true,ValueFromPipelineByPropertyName=$true)]
#[string]
$Text
)
$text
}
function f3
{
param(
[Parameter(Mandatory=$False,ValueFromPipelineByPropertyName=$true)]
[string]
$Text
)
$text
}
f1 ''
f2 ''
f3 ''
Đây f1 ném lỗi. Bây giờ hãy thử
f2 $null
f3 $null
Lần này chỉ f2 phát sinh lỗi. Những gì tôi muốn là một hàm f, sao cho
f '' # is accepted
f $null # returns an error
+1 cho câu hỏi hay. –
Xin lỗi, tôi không hiểu, chức năng 'f2' của bạn hoạt động như bạn muốn. f2 '' được chấp nhận và f2 $ null tạo ra lỗi. – JPBlanc
@JPB Tôi nghĩ rằng vấn đề đó là về kiểu dữ liệu. –