0
次のクエリがあります。同じコントローラから2つの異なるビューを1つずつ呼び出す方法20秒後にViewを変更したい。すなわち(コードの下に表示Show2およびその逆で見るショースワップをスニペット)2つのビューが1つのコントローラでスワップ
//public ActionResult Index()
//{
// return View(dc.ptcl.ToList());
//}
public ActionResult Create()
{
return View();
}
public ActionResult Show()
{
Query q = new Query();
DBConnection.Open();
string myQuery = q.getQuery();
OdbcCommand cmd = DBConnection.CreateCommand();
cmd.CommandText = myQuery;
OdbcDataReader DbReader = cmd.ExecuteReader();
DbReader.Read();
int i = DbReader.FieldCount;
// string dummyResult = DbReader["LoggedInAgents"].ToString();
// String fName = DbReader.GetName(1);
String fName = DbReader.GetString(2);
// ViewBag.Name = dummyResult;
ViewBag.City = fName;
ViewBag.Age = ViewBag.Age;
ViewBag.Time = DateTime.Now.ToString("h:mm:ss tt");
ViewBag.viewName = 0;
DbReader.Close();
cmd.Dispose();
DBConnection.Close();
Response.AddHeader("Refresh", "5");
//int turnValue = 0;
//if (turnValue == 0)
//{
// turnValue = 1;
// return RedirectToAction("Show2", "Driver");
//}
// System.Threading.Thread.Sleep(5000);
return View();
}
public ActionResult Show2()
{
ViewBag.loggedInAgents = "Lahore";
ViewBag.onCalls = "Lahore";
ViewBag.agentsInReady = "Lahore";
ViewBag.agentsInNotReady = "Lahore";
ViewBag.agentsInWrapUp = "Lahore";
ViewBag.reservedAgents = "Lahore";
ViewBag.callsOffered = "Lahore";
ViewBag.callsAnswered = "Lahore";
ViewBag.callsAbandoned = "Lahore";
ViewBag.callsInQueue = "Lahore";
ViewBag.longestTalkDuration = "Lahore";
ViewBag.abandoned = "Lahore";
ViewBag.serviceLevel = "Lahore";
ViewBag.maxTimeInQueue = DateTime.Now.ToString("h:mm:ss tt");
return View();
}
// POST: /Service/Create
//[HttpPost]
//[ValidateAntiForgeryToken]
//public ActionResult Create([Bind(Include = "id,CustomerName,Age")] PtclData service)
//{
// if (ModelState.IsValid)
// {
// dc.ptcl.Add(service);
// dc.SaveChanges();
// }
// return RedirectToAction("Index");
//}
なぜデフォルトでview1を表示せず、javascriptで 'setInterval'を使って20秒後にビュー番号2を呼び出すのですか? –
私は現在、view2を呼び出した場合、現在はview1をデフォルトとして使用しています。私はどのように戻ってview1に戻りますか?第二に、コントローラ自体に遅延時間(e.e20秒)を定義することができません。 –
2つのタイマーを作成する - 1つはview2にユーザーを送るview1に、もう1つはview2にユーザーを送るためのものです。Windowsアプリケーションではないのでコントローラーではできません –