一、问题描述

  在做C# 的 Guid 转换时,出现这个问题:Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). 中文翻译是:guid应包含32位数字和4个破折号(XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX)。

二、解决方案

  看我们转换的字符串是否满足这个条件:guid应包含32位数字和4个破折号(XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX),不满足修改满足即可!

三、案例

  我在转换的时候,由于我需要转换的字符串,不满足guid的规则,才出现这个错误。

仔细观察,我需要转换的字符串,根本就不满足 guid 的特点,当我把 ar 中的 “ " ” 号去掉就可以了。

OK,转换完成!

---------------修改2019年05月09日---------------------

因为我的 DataId 本来就是一个Json 字符串,所以没有必要去使用 Replace() 、Split(),直接使用 JsonConvert 操作多好,所以我改为:

var items = JsonConvert.DeserializeObject<List<Guid>>(_recordBookRepository.Get(input.RecordBookId).DataId);

让专业的方法,处理专业的事情,是否是最优解。

---------------修改2019年05月23日---------------------

判断 Guid 是否为空。

传入的参数:

/// <summary>
/// id
/// </summary>
public Guid? StatGroupId { get; set; }

判断是否为空:

var boolStatGroup = input.StatGroupId.HasValue && input.StatGroupId != Guid.Empty;

C# Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).的更多相关文章

  1. 可遇不可求的Question之MySqlClient的Guid 类型的映射篇

    关于 Guid 类型的映射 MySql 没有原生的 Guid 类型,一般使用 binary(16) 或者 char(36) 这两个类型.早期版本的 Connector/Net 将 binary(16) ...

  2. Why GUID primary keys are a database’s worst nightmare

    http://csharptest.net/1250/why-guid-primary-keys-are-a-databases-worst-nightmare/ When you ask most ...

  3. 在delphi中生成GUID

    什么是 GUID ? 全球唯一标识符 (GUID) 是一个字母数字标识符,用于指示产品的唯一性安装.在许多流行软件应用程序(例如 Web 浏览器和媒体播放器)中,都使用 GUID. GUID 的格式为 ...

  4. 在delphi中生成GUID/自动获取临时表名......

    什么是 GUID ? 全球唯一标识符 (GUID) 是一个字母数字标识符,用于指示产品的唯一性安装.在许多流行软件应用程序(例如 Web 浏览器和媒体播放器)中,都使用 GUID. GUID 的格式为 ...

  5. Oracle GUID转换为String

    Oracle中guid属于Raw(16)类型, 查询的时候如果不使用下面的函数, 程序中得到的是数组(byte[]). 在extjs环境下, 会带来数组的反序列化问题(newtonsoft.json) ...

  6. Hui之Hui.js 官方文档

    基础 // 判断值是否是指定数据类型 var result = hui.isTargetType("百签软件", "string"); //=>true ...

  7. 简单bat语法

    一.简单批处理内部命令简介 1.Echo 命令 打开回显或关闭请求回显功能,或显示消息.如果没有任何参数,echo 命令将显示当前回显设置. 语法 echo [{on off}] [message] ...

  8. Model First 开发方式

    概述 在项目一开始,没有数据库时,可以借助 EF 设计模型,然后根据模型同步完成数据库中表的创建,这就是 Model First 开发方式. 总结一点就是:现有模型再有表. 创建 Model Firs ...

  9. PHP下生成非重复的id

    PHP在多进程运行的情况下,如果不采用内存锁或者文件锁,基本没办法能解决生成唯一Id的问题.试过了静态变量.单例模式等等.查询到php里的uniqid()函数,最后还是找到了一个折中方式,虽然还是有可 ...

随机推荐

  1. Spark- RDD简介

    Spark里面提供了一个比较重要的抽象——弹性分布式数据集(resilient distributed dataset),简称RDD.弹性:数据可大可小,可分布在内存或磁盘,当某台机器宕机时,能够按照 ...

  2. AMD模块定义规范

    AMD 即Asynchronous Module Definition,中文名是“异步模块定义”的意思.它是一个在浏览器端模块化开发的规范,服务器端的规范是CommonJS.   模块将被异步加载,模 ...

  3. 多线程、方便扩展的Windows服务程序框架

    多线程.方便扩展的Windows服务程序框架 吴剑 2012-06-02 转载请注明出处:http://www.cnblogs.com/wu-jian/ 前言 在项目应用中经常会碰到定时调度的工作,比 ...

  4. Linux-shell 练习题(一)

    1.实现批量添加20个用户,用户名为user1-20,密码为user+123 #!/bin/bash count=$ if [ -n "$count" ] then ;i<= ...

  5. BEC listen and translation exercise 44

    But over the past 70 years or so, there's been a massive increase in one type of crime which was wha ...

  6. (转)使用CUnit进行单元测试和覆盖率统计

    CUnit安装 如果能联网的话,直接 yum install CUnit-devel.x86_64 就完成安装了,注意要安装devel版本,这样才能找到头文件. 编写单元测试代码 CUnit的测试是单 ...

  7. 关于VS中包含库、附加包含库、

    转载:https://blog.csdn.net/qing101hua/article/details/53841827 VS中C++的包含目录.附加包含目录和库目录和附加库目录的区别 对Visual ...

  8. hdu-5640 King's Cake (水题)

    题目链接 King's Cake Time Limit: 2000/1000 MS (Java/Others)     Memory Limit: 65536/65536 K (Java/Others ...

  9. [转]JS内存泄漏排查方法(Chrome Profiles)

    Google Chrome浏览器提供了非常强大的JS调试工具,Heap Profiling便是其中一个.Heap Profiling可以记录当前的堆内存(heap)快照,并生成对象的描述文件,该描述文 ...

  10. 如何避免这个delete from tb_name不带条件的操作

    那么,我们如何避免这个delete from tb_name不带条件的呢?其实是有办法的,但这只针对运维DBA或者DBA在操作时候有用,但对于PHP和JAVA程序,它的连接操作方式,就没办法避免了 s ...