C#默认参数被大喊大叫

时间:2015-10-28 16:36:15

标签: c# asp.net c#-4.0 optional-parameters

我有一个网络应用程序,我的任务是尝试调试和修复。不是我的代码。 该应用程序的目标是4.0框架,尽管我可以说是C# version 4.0

网站无法编译,并且出现以下错误:Default parameter specifiers are not permitted.

它在两个方面抱怨,这是其中之一:

private static void setDateCell(string cellXY, object value, string format = "MM/dd/yyyy") {

另一个点是类似的函数声明,但是对于数字和不同的默认格式。

here我所知,C#的v4.0是在引入默认参数时。我已经仔细检查了网站属性页面,以确保它的目标是Framework 4.0。所以我不确定为什么抱怨有可选参数。

我尝试过aspnet_regiis -i;没有快乐。

有什么想法吗?

我们使用的是VS2010 Express。我们目前正在安装VS2015 Express ......看看它是否可能是2010年的一个问题。

2 个答案:

答案 0 :(得分:2)

检查targetFramework的{​​{1}}节点的<compilation>属性。 也许它出于某种原因而被困在低于4.0的东西上。检查/修复此问题的另一种方法是将项目切换到3.5,然后再切换到4.0。

答案 1 :(得分:0)

感谢Serge,他的回答让我解决了这个问题。 Visual Studio 2010不支持使用该属性进行编译。我们在机器上安装了VS2015,并在那里进行了编辑,然后我们就可以定位更高的Framework版本,并继续使用。