我正在尝试添加一个自定义属性,它是一个 guid,但它给了我这个错误:
System.InvalidCastException:无法将参数值从字符串转换为 Guid。---> System.InvalidCastException:从“System.String”到“System.Guid”的无效转换。
我在配置中指定:
<parameter>
<parameterName value="@id" />
<dbType value="Guid" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%X{id}" />
</layout>
</parameter>
我使用的实际代码(片段)是这样的:
Guid guid = Guid.NewGuid();
if (defaultLogger.IsEnabledFor(level))
{
var loggingEvent = new LoggingEvent(ThisDeclaringType,
defaultLogger.Repository, defaultLogger.Name, level, message, exception);
loggingEvent.Properties["Id"] = guid;
请问有什么帮助吗?:) 数据库中的 id 字段被定义为唯一标识符 NOT NULL,但它没有主键约束。