gpt4 book ai didi

c# - C# 中的默认参数值

转载 作者:太空宇宙 更新时间:2023-11-03 20:43:50 24 4
gpt4 key购买 nike

我想使用 .net 框架中的 DefaultParameterValueAttribute 类将 DateTime 作为 DefaultParameterValue 传递给我的方法。有办法吗?

我可以在下面的代码中传入字符串、 bool 值和其他类型。我尝试传入 Nullable DateTime 但没有成功。

 object SomeMethod([Optional, DefaultParameterValue("")]string param1,
[Optional, DefaultParameterValuefalse)] bool isValid,
[Optional, DefaultParameterValue(null)] Nullable<DateTime> valuationDate
);

最佳答案

在 C# 4.0 之前,您最好的选择是调用“真实”版本的重载:

public void Foo() { Foo(123,"abc");}
public void Foo(int a) { Foo(a, "abc");}
public void Foo(string b) {Foo(123, b);}
public void Foo(int a, string b) { ... your code ... }

在 C# 4.0 中,这将只是:

public void Foo(int a = 123, string b = "abc") { ... }

调用,例如:

Foo();
Foo(456);
Foo(b: "def");

关于c# - C# 中的默认参数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1557863/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com