Guid 应包含 32 位数字和 4 个破折号 (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)。错误?

Sru*_*thi 5 c# collections asp.net-mvc-4

我需要将这六个字段保存在同一列中,但不能保存在同一行和同一单元格中。每个字段都有默认的 GUID。所以我决定将该默认 GUID 放入一个列表中,将字段放入一个列表中,并在我们想要的位置调用该特定列表的该对象。

       ArrayList Alist = new ArrayList();
        {
            Alist.Add("FD713788-B5AE-49FF-8B2C-F311B9CB0CC4");
            Alist.Add("64B512E7-46AE-4989-A049-A446118099C4");
            Alist.Add("376D45C8-659D-4ACE-B249-CFBF4F231915");
            Alist.Add("59A2449A-C5C6-45B5-AA00-F535D83AD48B");
            Alist.Add("03ADA903-D09A-4F53-8B67-7347A08EDAB1");
            Alist.Add("2F405521-06A0-427C-B9A3-56B8931CFC57");
        }

        ArrayList objValue = new ArrayList();
        {
            objValue.Add(viewmodel.TinNo);
            objValue.Add(viewmodel.CstNo);
            objValue.Add(viewmodel.PanNo);
            objValue.Add(viewmodel.CinNo);
            objValue.Add(viewmodel.ExciseRegNo);
            objValue.Add(viewmodel.ServiceTaxNo);
        }

   var TaxInfoTaxFiledclassobj = new TaxInfoTaxFiled()
        {

            TaxInfoTaxFieldID = TaxInfoTaxFieldObj,
            TaxFieldID = new Guid(Alist .ToString ()),
            FieldValue = objValue.ToString(),
        };
Run Code Online (Sandbox Code Playgroud)

一切都工作正常,但在 TaxFieldID 中,它显示从列表计算的计数,但在保存时显示以下错误

在此输入图像描述

我该怎么办?

Ste*_*eve 3

您正在尝试将 anArrayList作为指南传递。在这一行中:

TaxFieldID = Guid.Parse(Alist.ToString())
Run Code Online (Sandbox Code Playgroud)

您只需选择要解析的元素之一ArrayList。此外,您可以使用 aList<Guid>来完全消除该问题。

List<Guid> guidList = new List<Guid>();
guidList.Add(new Guid("DDE4BA55-808E-479F-BE8B-72F69913442F"));

...

TaxFieldID = guidList[0]; // obviously, select the appropriate GUID
Run Code Online (Sandbox Code Playgroud)