不可调用的成员不能像方法一样使用

时间:2011-04-08 22:06:20

标签: c# function methods

我正在尝试将VB函数重写为C#,但我收到以下错误:

  

错误1不可调用的成员   'System.DateTime.Today'无法使用   像一个方法。 C:\ Documents and   设置\ daultrd \本地   设置\ Temp \ SSIS \ ST_ceaa126ff88343ccbfdc6dd27d8de1a7 \ ScriptMain.cs 56 67 ST_ceaa126ff88343ccbfdc6dd27d8de1a7

违规行:

strTomorrow = Convert.ToString(String.Format(DateTime.Today().AddDays(+1), "yyyyMMdd"));   

我该如何解决这个问题? 多谢你们;你超级快!你们所有人都谈到了同样的事情。所以我删除了括号,但现在我得到了一个不同的错误:

  

错误1'string.Format的最佳重载方法匹配   (System.IFormatProvider,string,   params object [])'有一些无效   参数C:\ Documents and   设置\ daultrd \本地   设置\ Temp \ SSIS \ 2e23c9f006d64c249adb3d3a2e597591 \ ScriptMain.cs 56 44 st_ceaa126ff88343ccbfdc6dd27d8de1a7

以下是这行代码:

strTomorrow = Convert.ToString(String.Format(DateTime.Today.AddDays(+1), "yyyyMMdd"));   //Strings.Format(DateAndTime.Today().AddDays(+1), "yyyyMMdd"));

4 个答案:

答案 0 :(得分:9)

strTomorrow = DateTime.Today.AddDays(1).ToString("yyyyMMdd");
  • String.Format总是返回一个字符串,不需要将结果转换为字符串
  • String.Format不接受DateTime作为其第一个参数。将DateTime转换为特定格式的字符串的最简单方法是调用DateTime.ToString并将格式作为参数传递

答案 1 :(得分:2)

Today是一个属性,因此您不应添加括号。你还有string.Format的参数不正确。

strTomorrow = String.Format("{0:yyyyMMdd}", DateTime.Today.AddDays(+1));

答案 2 :(得分:0)

DateTime.Today().AddDays(1)更改为DateTime.Today.AddDays(1)

今天是属性,而不是方法。

答案 3 :(得分:0)

DateTime.Today是属性,而不是方法。删除括号。