ERROR: Unable to bind the runtime of the zero reference

ERROR: Unable to bind the runtime of the zero reference

我完全按照本指南 http://cloudinary.com/documentation/dotnet_image_upload#direct_uploading_from_the_browser 制作了一个用于客户端上传照片的简单 Web 应用程序(我正在使用 asp.net mvc)。

这是我的观点:http://pastebin.com/JGew5hcf ,

我的控制器http://pastebin.com/EjsfUGA3

和我的 Photo.cs 模型 http://pastebin.com/sad97QQe

指南根本没有说我需要为 'Photo' class 创建任何模型,但我需要创建它,因为我的控制器中的第 41 行。

当我尝试 运行 我的应用程序时出现了一个奇怪的错误,它说 "Unable to bind the runtime of the zero reference"。它在我的视图的第 11 行停止插入符号(该行是“@Model.Cloudinary.Api.BuildUploadForm...”)。

这是 StackTrace:http://pastebin.com/uLpwZJUy .

此外,我的项目安装了 CloudinaryDotNet nuget 包。

UPD: 手动指定 'cors_location' 字符串,因为我认为这是问题的核心。我已将此 link 设置为文件的本地路径但没有成功:@{string cors_location = "http://localhost:50742/Content/cloudinary_cors.html";}

同样的错误。

你应该检查 .net 的官方 cloudinary github repo https://github.com/cloudinary/CloudinaryDotNet

并阅读文档 http://cloudinary.com/documentation/dotnet_integration#getting_started_guide

将以下代码添加到控制器后,我的应用程序运行正常。

    public class HomeController : Controller
{
    static Cloudinary m_cloudinary;

    static HomeController()
    {
        PhotoAlbumContainer album = new PhotoAlbumContainer();
        album.Database.Initialize(false);

        Account acc = new Account(
                "cloud name",
                "api_key",
                "api_secret_key");

        m_cloudinary = new Cloudinary(acc);
    }

    public ActionResult Index()
    {
        var model = new DictionaryModel(m_cloudinary, new Dictionary<string, string>() { { "unsigned", "false" } });
        return PartialView("UploadDirectly", model);
    }...}