asp.netMVC-3でプロジェクトを開発しています。
これらの1つのモジュールで、チームを作成するためのビューを作成しました。その中で、プロジェクト名のドロップダウンリストが1つあります。ドロップダウンリストから選択したプロジェクトのメンバーを表示するリストボックス(ListBox-1)。選択したレコードまたはすべてのレコード(メンバーの名前)を転送/選択するための別のリストボックス(ListBox-2)があります。これはjavascriptを使用して完全に行われます。
その形式のデータベースにすべてのデータを保存する必要があります。その点で、2番目のリストボックス(ListBox-2)に表示されているチームメンバーのリストをデータベースに保存する必要があります。そして、これらの私の質問は、そのリストボックス(ListBox-2)のデータをフェッチして、データベースフィールドに保存する方法ですか?
以下は私の作成チームビューです...
このフォームでは、最初のドロップダウンリストにプロジェクト名が表示されます。ドロップダウンリストの下には、プロジェクトのメンバー名を表示するために使用される2つのリストボックスがあります。
リストボックスのビューコードは以下の通りです。
Dropdownlist for Project
<%: Html.DropDownListFor(model => model.availableproject, new SelectList(ViewBag.Projects as System.Collections.IEnumerable, "project_id", "project_name"),"Select Project", new { id = "ddlCars" }) %>
code of listbox.
<div class="ddlModels" style="float:left; ">
<%-- <%: Html.ListBox("projectmembers_id") %> --%>
<%: Html.ListBoxFor(Models => Models.availableuser, new SelectList(Enumerable.Empty<SelectListItem>(), "user_id", "user_login_name"),
new { id = "ddlModels2" }) %>
</div>
<div style="display:inline; float:left; margin-left:5px; margin-right:5px; margin-top:10px;">
<input type="button" name="add" id="alladd" onclick="CopyListsall();" value=">>" style="width:27px; height:15px; font-size:8px; color:#56a1d6;"/><br />
<input type="button" name="add" id="add" onclick="CopyLists();"value=">" style="width:27px; height:15px; font-size:8px; color:#56a1d6;"/><br /><br />
<input type="button" name="remove" id="allremove" onclick="RemoveListsall();" value="<<" style="width:27px; height:15px; font-size:8px; color:#56a1d6;" /><br />
<input type="button" name="remove" id="remove" onclick="RemoveLists();" value="<" style="width:27px; height:15px; font-size:8px; color:#56a1d6;" />
</div>
<div class="ddlModels" style="float:left;">
<%: Html.ListBoxFor(Models => Models.availableuser, new SelectList(Enumerable.Empty<SelectListItem>(), "user_id", "user_login_name"),
new { id = "ddlModels1" }) %>
<%-- <%: Html.ListBox("projectmembers_id") %>--%>
</div>
モデルのコード(.csファイル)
namespace ProjectManagementSystem.Models
{
public class TeamCreate
{
[Required(ErrorMessage = "Empty Not Allow")]
public int team_id { get; set; }
[Required(ErrorMessage = "Empty Not Allow")]
[DisplayName("Team Name")]
public string team_name { get; set; }
[Required(ErrorMessage = "Empty Not Allow")]
public int project_id { get; set; }
[Required(ErrorMessage = "Empty Not Allow")]
public string project_name { get; set; }
[Required(ErrorMessage = "Empty Not Allow")]
public int projectmembers_id { get; set; }
[Required(ErrorMessage = "Empty Not Allow")]
public int projectmemberuser_id { get; set; }
[Required(ErrorMessage = "Empty Not Allow")]
public int user_id { get; set; }
public int SerialNumber { get; set; }
[Required(ErrorMessage = "Empty Not Allow")]
[DisplayName("Team Leader")]
public string user_real_name { get; set; }
[Required(ErrorMessage = "Empty Not Allow")]
public int technology_skill_id { get; set; }
[Required(ErrorMessage = "Empty Not Allow")]
public string technology_skill_name { get; set; }
[Required(ErrorMessage = "Empty Not Allow")]
public string team_description { get; set; }
[Required(ErrorMessage = "Empty Not Allow")]
public int leader_id { get; set; }
public bool t1 { get; set; }
public List<user_master> availableuser;
public List<project_master> availableproject;
public List<team_master> availableteam;
public List<team_to_user> availableteamuser;
public List<technology_skill_master> availabletechnology;
public List<int> SelectSkill { get; set; }
public List<int> lbtechnologyskillname2 { get; set; }
public List<int> ddlModels { get; set; }
public List<int> ddlModels1 { get; set; }
}
}
データをフェッチするための2番目の.csファイル。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace ProjectManagementSystem.Models
{
public class TeamCreateFetch
{
private int counter = 1;
//ProjectManagementSystemEntities3 pb = new ProjectManagementSystemEntities3();
public static IList<TeamCreate> all()
{
IList<TeamCreate> result =
(IList<TeamCreate>)HttpContext.Current.Session["team1"];
if (result == null)
{
ProjectManagementSystemEntities3 pb = new ProjectManagementSystemEntities3();
HttpContext.Current.Session["team1"] = result =
( from l in pb.team_master
join u in pb.user_master
on l.user_id equals u.user_id
select new TeamCreate
{
//SerialNumber= counter++,
team_id= l.team_id,
user_id = u.user_id,
team_name= l.team_name,
user_real_name=u.user_real_name,
}
return result;
}
}
}
私のデータベースは以下の通りです...
テーブル名-team_master
team_id
team_name
user_id(FK with user_id of "user_master")
team_description
表-2name-team_to _user
user_id(PK)
user_real_name
表-3name-team_to _user
team_id (FK with team id of "team_master")
user_id (FK with user_id of "user_master")
次に、2番目のリストボックスの値をuser_idフィールドのテーブル「team_to_user」に保存する必要があります。
では、MVC-3でそれを行う方法は??
前もって感謝します