0

ASP.Net MVC 4、インターネット アプリケーションを使用して簡単な Web サイトを作成しました。新しいページのコントローラー、モデル、および関連するビューを追加しました。すべてがローカルで正常に動作し、登録、ログイン、新しいページ機能の使用が可能です。Azure Web サイトに公開した後、ホーム、アバウト、登録、ログインのすべての組み込み機能を正常に使用できます。ただし、追加した新しいコンテンツに移動できず、エラー 500 が表示されます。ここでも、この機能はすべてローカルで機能します。私はASP.Net MVCに非常に慣れていないので、私が得ることができるあらゆる助けを利用できます.

RouteConfig

routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
        );

追加したコントローラのインデックス アクション

private UsersContext uc = new UsersContext();
    private UserProfile user = new UserProfile();
    private Character character = new Character();
    //
    // GET: /Character/

    public ActionResult Index()
    {
        user = uc.UserProfiles.Single(u => u.UserName == User.Identity.Name);
        return View(uc.Characters.ToList().Where(c => c.AccountOwnerId == user.UserId));
    }

他に役立つアイテムがあれば教えてください。ああ、これを新しく作成した DbContext ではなく、UsersContext に入れました。

public UsersContext()
        : base("DefaultConnection")
    {
    }

    public DbSet<UserProfile> UserProfiles { get; set; }
    public DbSet<Character> Characters { get; set; }

編集:私が言及するのを忘れていたのは、私が公開したときに、メールアドレスフィールドがユーザープロファイルまたはキャラクターテーブル全体に追加されなかったことです. これらのアイテムを手動で追加するには、Azure 管理ポータルで SQL を実行する必要がありました。

4

1 に答える 1

1

なぜこれがうまくいかなかったのかを理解しようとすることのすべての欲求不満の後、私は最初からやり直すことにしました。Azure と SQL DB から Web サイトを削除しました。次に、新しい Web サイトと SQL DB を追加し、新しい発行設定ファイルを取得しました。それをVSにインポートして公開しました。それはすべて新規インストールで機能しました。最初に何を失敗したかはわかりませんが、現在は意図したとおりに機能しています。ありがとう、

于 2013-05-19T18:42:57.737 に答える