【问题标题】:Add values into two columns in a table using data in one textbox使用一个文本框中的数据将值添加到表的两列中
【发布时间】:2012-12-26 05:05:29
【问题描述】:

我正在使用entity framework 开发一个asp.net 网络表单应用程序。我的数据库表中有两列要添加LatitudeLongitude。但我不想在用户界面中添加两个TextBoxes 来添加它们。

我需要添加一个TextBox 来添加这些数据,用逗号分隔。 (例如:85.06000,25.01200)。当用户点击提交按钮时,我需要拆分这个字符串并将结果添加到数据库表中的LatitudeLongitude 列中。

我已经创建了使用DetailsViewTemplateField 插入数据的表单。

我是 asp.net 和 C# 的新手。我怎么能这样做?

【问题讨论】:

  • 你有什么问题?分裂?还是使用数据库?
  • 需要处理DetailsViewevent - xxxxInserting,调用FindControl方法获取TextBox的引用。
  • @AVD 我添加了OnItemInserting 事件。但它不起作用。见我的latest post

标签: asp.net entity-framework-4.1 detailsview templatefield


【解决方案1】:
string[] parts = txtInput.Text.Trim().Split(',');
string Latitude = parts[0];
string Longitude = parts[1];

现在您已将它们分开,您可以将它们发送到您的数据库。

【讨论】:

    【解决方案2】:

    要分隔两部分的字符串,您可以使用string.Split() 方法。

    如果您有可变的纬度和经度:

    var splittedArray = latitudeandlongitude.Split(',');
    
    if(splittedArray.Length!=2)
        throw new ArgumentException();
    var latitude = splittedArray[0];
    var longitude = splittedArray[1];
    

    但我不建议您这样做(对两个不同的变量使用一个文本框)。这将是用户错误的根源,他们会恨你。

    【讨论】:

      【解决方案3】:

      您可以像这样拆分值:-

      string[] arr=TextBox1.Text.Split(',');
      

      然后准备像这样的插入语句:-

      Insert into yourtable("Latitude","Longitude") values(arr[0],arr[1]);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-09-27
        • 2011-08-28
        • 1970-01-01
        • 2018-09-01
        • 2013-08-27
        相关资源
        最近更新 更多