SharePoint2007リストのEdit.aspxページにユーザーコントロールを展開しました。テストサーバーでは正常に動作していますが、本番環境ではユーザーコントロールのUIのみが読み込まれます。ページ読み込み時のテキストボックスまたはコンボボックスがいっぱいになりません。いっぱいになったデータではなく、ユーザーコントロールのデフォルト値のスクリーンショットをご覧ください。また、クエリ文字列からIDを取得し、ページの読み込み時に必要なデータを読み込む以下のコードを見つけます。誰がリストアイテムを割り当てているかを確認するためにcreatedbyvalueを使用しました。ユーザーが自分で作成していないデータにアクセスしている場合は、他のページにリダイレクトされます。ガイドしてください。それを機能させるために私は何をするか、またはチェックしますか。
public partial class Class1 : System.Web.UI.UserControl
{
static string name, lname, Number;
protected void Page_Load(object sender, EventArgs e)
{
try
{
string c1,c2,c3,c4,c5, Created;
if (!Page.IsPostBack)
{
EditID = Convert.ToInt32(Request.QueryString["ID"]);
name = SPContext.Current.Web.CurrentUser.Name;
lname = SPContext.Current.Web.CurrentUser.LoginName;
SPSecurity.RunWithElevatedPrivileges(delegate()
{
using (SPSite site = new SPSite("site name"))
{
using (SPWeb web = site.OpenWeb())
{
SPList list = web.Lists["list1"];
SPList UserSkill = web.Lists["list2"];
ItemForEdit = UserSkill.GetItemById(EditID);
c1 = ItemForEdit["col1"].ToString();
c2 = ItemForEdit["col2"].ToString();
c3 = ItemForEdit["col3"].ToString();
c4 = ItemForEdit["col4"].ToString();
c5 = ItemForEdit["col5"].ToString();
Created = ItemForEdit["Author"].ToString();
Number = ItemForEdit["col6"].ToString();
string[] extract;
extract = Created.Split('#');
if (name == extract[1])
{
WholeData = web.Lists["list1"].Items.GetDataTable();
Roles = WholeData.DefaultView.ToTable(true, "Title");
txtnumber.Text = Number;
ddlRole.DataSource = Roles;
ddlRole.DataTextField = "Title";
ddlRole.DataValueField = "Title";
ddlRole.DataBind();
ddlRole.SelectedValue = c1;
//more code
}
else
{
Response.Redirect("/IM/pages/Intrusion.aspx", false);
}
}
}
});
}
}
catch (Exception exc)
{
HttpContext.Current.Response.Write("<script>alert('Exception on page load: " + exc.Message + "')</script>");
}
}
}