c# - 如何将对象时间戳与对象 ID 连接起来并将它们传递给操作方法

标签 c# asp.net asp.net-mvc asp.net-mvc-5

我的 asp.net mvc View 中有以下代码:-

@foreach (var item in Model)
{<tr><td>

 <input type="checkbox" class="checkBoxClass" name="CheckBoxSelection" 
 value="@item.TMSServerID.ToString()"/> </td>

这将呈现一个以 objectid 作为其值的复选框。 我编写了以下脚本,它将收集所选对象的所有 ID:-

var boxData = [];

        $("input[name='CheckBoxSelection']:checked").each(function () {
            boxData.push($(this).val());
        });

    }

         $.ajax({
             type: "POST",
             url: URL,
             data: { ids: boxData.join(",")}
            //code goes here

接受 id 的 action 方法如下所示;-

public ActionResult TransferSelectedServers(string ids)
if (ModelState.IsValid)
            {
                try
                {
                    var serverIDs = ids.Split(',');

现在我想要实现的是我希望复选框包含一个字符串,该字符串连接 objectid+timestamp。目前对象id是int类型,时间戳是byte[]类型。

但是我有以下两个问题:-

1.我如何将时间戳转换为字符串并将其与 id 连接起来,例如:-

@foreach (var item in Model)
    {<tr><td>

     <input type="checkbox" class="checkBoxClass" name="CheckBoxSelection" 
     value="@item.TMSServerID.ToString()"+ "@item.timestamp.ToString()"/> </td>

2.在我的操作方法中,如何在拆分字符串后将表示时间戳的字符串再次转换为 byte[]?

问候

最佳答案

1) 您用于连接字符串的代码很接近,但您需要在其中添加某种定界符以找出一个值在何处停止而另一个值在何处开始。如果 ID 是 int,则可以使用任何非 int 字符作为分隔符。像这样的东西:

value="@string.Format("{0},{1}", item.TMSServerID, item.timestamp)"

...这把我们带到

2) 以上不会给你你想要的,因为 byte[].ToString() 只会给你“System.Byte[]”。为什么时间戳是byte[]?那是什么格式?那是来自SQL吗?我的建议是,如果可以的话,将该 byte[] 转换为 DateTime,以便更容易使用。

一旦它是DateTime,您就可以在串联中使用item.timestamp.Ticks。然后,您的 AJAX 处理程序就可以轻松完成此操作:

string[] parts = ids.Split(',');
int id = int.Parse(parts[0]);
DateTime timestamp = new DateTime(long.Parse(parts[1]));

关于c# - 如何将对象时间戳与对象 ID 连接起来并将它们传递给操作方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25017904/

相关文章:

c# - 为什么此动态列表比较失败?

asp.net - 尝试向服务器发送 byte[] 时,Xamarin 中出现 "Cannot access a disposedObject"异常

c# - 可以将插件 DLL 存储在/Plugin 文件夹而不是/Bin 中吗?

asp.net-mvc - 未使用 MSBuild、Teamcity 复制 Bin 文件夹

c# - Active Directory 用户和计算机的 LDAP 过滤器字符串 "find"对话

c# - 查看文档后不了解 ICollection 在 C# 中的作用

c# - 在 ASP.NET Core 2.0 中将 DataTable 转换为 IEnumerable<T>

asp.net - MVC 自定义角色提供程序重定向到登录页面

c# - 从代码隐藏设置对象参数标签

c# - 在 ASP.NET 中构建 SiteMap