我想在每次登录用户切换到主页后执行操作。
但我需要切换Binding myBinding = new Binding();
myBinding.Source = win.DataContext;
myBinding.Path = new PropertyPath("");
myBinding.Mode = BindingMode.TwoWay;
myBinding.UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged;
sampleText.SetBinding(TextBlock.TextProperty, myBinding);
。我试着把道路放在路上,但它不起作用。任何的想法?这是我的View/Car/Index
:
AccountController
索引视图:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Automarket.Models;
using System.Data.Entity.Spatial;
namespace Automarket.Controllers
{
public class AccountController : Controller
{
// GET: Account
public ActionResult Index()
{
using (OurDBContext db = new OurDBContext())
{
return View(db.userAccount.ToList());
}
}
public ActionResult Register()
{
return View();
}
[HttpPost]
public ActionResult Register(UserAccount account)
{
if (ModelState.IsValid)
{
using (OurDBContext db = new OurDBContext())
{
db.userAccount.Add(account);
db.SaveChanges();
}
ModelState.Clear();
ViewBag.Message = account.Firstname + " " + account.Lastname + "Succesfully Registered: ";
}
return View();
}
// Login method
public ActionResult Login()
{
return View();
}
[HttpPost]
public ActionResult Login(UserAccount user)
{
using (OurDBContext db = new OurDBContext())
{
var usr = db.userAccount.Single(u => u.Username == user.Username && u.Password == user.Password);
if (usr != null)
{
Session["UserID"] = usr.Id.ToString();
Session["Username"] = usr.Username.ToString();
return RedirectToAction("Logged In ");
}
else
{
ModelState.AddModelError(" ", "Username or Password are incoorect");
}
}
return View();
}
public ActionResult LoggedIn()
{
if (Session["UserID"] != null)
{
return View();
}
else
{
return RedirectToAction("Login");
}
}
[HttpGet]
public ActionResult Create()
{
return View();
}
[HttpPost]
public ActionResult Create(UserAccount account)
{
using (OurDBContext db = new OurDBContext())
if (ModelState.IsValid)
{
db.userAccount.Add(account);
return RedirectToAction("Index");
}
return View(account);
}
// List the details of user
public ActionResult Details(int id=0)
{
using (OurDBContext db = new OurDBContext())
{
UserAccount user = db.userAccount.Find(id);
if (user==null)
{
return HttpNotFound();
}
return View(user);
}
}
// post method for Delete User
public ActionResult Delete(int id =0)
{
using (OurDBContext db = new OurDBContext())
{
UserAccount user = db.userAccount.Find(id);
if (user == null)
{
return HttpNotFound();
}
return View(user);
}
}
[HttpPost,ActionName("Delete")]
public ActionResult DeleteConfirmed(int id=0)
{
using (OurDBContext db = new OurDBContext())
{
UserAccount user = db.userAccount.Find(id);
if (user==null)
{
return HttpNotFound();
}
db.userAccount.Remove(user);
db.SaveChanges();
return RedirectToAction("Index");
}
}
public ActionResult Edit(int? id)
{
using (OurDBContext db = new OurDBContext())
{
if (id == null)
{
return new HttpStatusCodeResult(System.Net.HttpStatusCode.BadRequest);
}
UserAccount user = db.userAccount.Find(id);
if (user == null)
{
return HttpNotFound();
}
return View(user);
}
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit([Bind(Include = "Id,Firstname,Lastname,Email,Username,Password,ConfirmaPassword")] UserAccount user)
{
using (OurDBContext db = new OurDBContext())
if (ModelState.IsValid)
{
db.Entry(user).State = System.Data.Entity.EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
return View(user);
}
}
}
答案 0 :(得分:1)
public ActionResult LoggedIn()
{
if (Session["UserID"] != null)
{
return View();
}
else
{
return RedirectToAction("Login");
}
}
我认为您必须将要显示的视图名称放在"返回视图(" nameOfViewHere")"。
答案 1 :(得分:0)
return RedirectToAction("Index", "Car");
从另一个控制器调用时,您也需要传递控制器名称