我怎样才能使扩展方法对于System.IO.Path类我的意思是我需要的东西象下面这样:我可以为System.IO.Path类制定扩展方法吗?
Path.GetExtension(sFilePath)
我要让方法:
Path.GetMimeType(sFilePath)
扩展方法:
public static string GetMIMEType(this Path sPath,string sFilePath)
{
string sExtension = Path.GetExtension(sFilePath).ToLowerInvariant();
if (sExtension.Length > 0 && dicMIMETypes.ContainsKey(sExtension.Remove(0, 1)))
{
return dicMIMETypes[sExtension.Remove(0, 1)];
}
return "unknown/unknown";
}
但是当编译上面的代码方法时得到错误('System.IO.Path':静态类型不能用作参数)。
感谢所有,
不可能 - 但这个答案有一个可能适合您的需求的锻炼。 http://stackoverflow.com/questions/249222/can-i-add-extension-methods-to-an-existing-static-class –
你可以告诉你做错了,你从来没有真正使用* sPath *参数在你的代码中。你也没有办法找出如何使用它。所以对扩展方法没有意义,它没有扩展任何东西。 –