MVC - 以下方法或属性之间的调用不明确

Riv*_*vka 1 model-view-controller asp.net-mvc-views

我不明白为什么我会收到这个错误。我的项目中只有一个带有一种方法的类,如下所示:

public static class Extensions
{
    public static string Chop(this string s, int length)
    {
        ...
        return "";
    }
}
Run Code Online (Sandbox Code Playgroud)

我在我的视图中这样调用它: @item.PostContent.Chop(20)
它给了我一个编译器错误:

The call is ambiguous between the following methods or properties: 'Extensions.Chop(string, int)' and 'Extensions.Chop(string, int)'
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏。谢谢你。

Mik*_*ind 5

我猜您已经将扩展类文件放在 App_Code 文件夹中,对吗?如果是这样,请将其移到 App_Code 之外并删除该文件夹。App_Code 在 MVC 应用程序中没有位置,默认情况下创建为 Web 应用程序项目而不是网站项目。

Web 应用程序在构建时编译为 dll,App_Code 中的任何内容也在运行时编译为单独的 dll。因此有两种方法和歧义。