2011-02-08 28 views
6

Tôi đang thiết kế một lệnh ghép ngắn bằng cách sử dụng đồng bằng C#. Có thể xác định giá trị mặc định cho tham số không?powershell parameterattribute giá trị mặc định (C# cmdlet)

Script cmdlet:

[Parameter] [string] $ParameterName = "defaultValue" 

nào là tương đương cho C#?

[Parameter] 
public string ParameterName { get; set; } 

Cảm ơn bạn?

Trả lời

8

Với các thuộc tính được tự động triển khai, bạn không thể. Bạn sẽ cần phải tạo ra các getter thực tế và setter.

Something như thế này:

private string _ParameterName = "defaultvalue"; 

[Parameter] 
public string ParameterName 
{ 
    get 
    { 
      return _ParameterName ; 
    } 
    set 
    { 
     _ParameterName = value; 
    } 
} 
+1

Cảm ơn. Có lẽ nó là quá rõ ràng ... Tôi có thể làm điều đó với tự động thực hiện quá, chỉ cần đặt chúng trong constructor. – fra

+0

có chắc chắn lý do tại sao không ... tôi trả lời trong bối cảnh của ví dụ bạn cho thấy trong câu hỏi –

+1

và bạn đã cho tôi gợi ý đúng ... cảm ơn bạn! – fra

0

Kể từ c# 6.0 đã được realeased

[Parameter] 
public string ParameterName { get; set; } = "defaultValue"; 
Các vấn đề liên quan