我想使用方法或函数来创建我需要的目录树,并返回调用过程的新路径。
但是我无法编译
我收到错误cannot convert method group 'localAttachmentsPath' to non delegate type string ..
这是我的代码 - 我做错了什么?有没有更好的方法来实现这一目标?
private string localAttachmentsPath(ref string emailAttachmentsPath)
{
string sYear = DateTime.Today.Year.ToString();
string sMonth = DateTime.Now.ToString("MMMM");
string sDirectoryDate = DateTime.Today.ToString("dd.MM.yyyy");
if (!Directory.Exists(emailAttachmentsPath))
{
Directory.CreateDirectory(emailAttachmentsPath);
}
emailAttachmentsPath = emailAttachmentsPath + "\\" + sYear;
if (!Directory.Exists(emailAttachmentsPath))
{
Directory.CreateDirectory(emailAttachmentsPath);
}
emailAttachmentsPath = emailAttachmentsPath + "\\" + sMonth;
if (!Directory.Exists(emailAttachmentsPath))
{
Directory.CreateDirectory(emailAttachmentsPath);
}
emailAttachmentsPath = emailAttachmentsPath + "\\" + sDirectoryDate;
if (!Directory.Exists(emailAttachmentsPath))
{
Directory.CreateDirectory(emailAttachmentsPath);
}
//localAttachmentsPath = emailAttachmentsPath;
return localAttachmentsPath;
}
答案 0 :(得分:0)
您只需指定要返回的值,如下所示:
return emailAttachmentsPath;
我还建议您从参数中删除ref
关键字。
进一步阅读
答案 1 :(得分:0)
看起来问题是:
return localAttachmentsPath;
这是一个函数,我想你要声明一个局部变量,其名称不是函数名。
答案 2 :(得分:0)
如果您使用的是ref string emailAttachmentsPath
,则不需要返回任何字符串
答案 3 :(得分:0)
您可以将返回类型设置为void
并删除return
语句,因为您将变量emailAttachmentsPath
作为引用变量传递,因此它将从调用者更新而不返回语句。
您的方法应如下所示:
private void localAttachmentsPath(ref string emailAttachmentsPath)
{
//your code
//no return statement
}