使用webpart C#将文本框更改为日期格式

时间:2016-03-01 03:56:39

标签: c# asp.net sharepoint-2013

我的代码就像这样

protected void SubmitbuttonID_Click(object sender, EventArgs e)
{
    if (Page.IsValid)
    {
        try
        {
            SPWeb web = SPContext.Current.Web;
            SPList lst = web.Lists["PositionChangeForm"];
            SPListItem lstItem = lst.Items.Add();

            lstItem["Modified"] = ModifiedDate.Text;
            lstItem["Created"] = CreatedDate.Text;

            lstItem.Update();
        }
        catch (Exception ex)
        {
            Exceptiontextbox.Text = ex.Message;
        }

        ModifiedDate(textbox)

        CreatedDate(textbox)
    }
}

当我在SharePoint填写表单时显示以下错误

  

输入字符串的格式不正确。

我知道由于SharePoint列表验证而出现此错误。我必须将这些文本框转换为日期和时间格式。

希望这是可以理解的,我完全是初学者。如果你有任何想法,请帮助我。

2 个答案:

答案 0 :(得分:1)

您需要将输入字符串转换为Datetime。

试试这个:

 DateTime modifiedDate = Convert.ToDateTime(ModifiedDate.Text);
 DateTime createdDate = Convert.ToDateTime(CreatedDate.Text);

 lstItem["Modified"] = modifiedDate ;
 lstItem["Created"] = createdDate ;
 lstItem.Update();

答案 1 :(得分:0)

由于我们无法看到您要提交的日期字符串,因此我只能说SharePoint中的日期/日期时间应采用特定格式。

使用以{date}为参数的https://msdn.microsoft.com/en-us/library/microsoft.sharepoint.utilities.sputility.createiso8601datetimefromsystemdatetime.aspx将返回正确格式的字符串,该格式将被SharePoint接受