RAW方法Codefluent实体中的Nullable Guid参数

时间:2018-01-04 13:26:04

标签: codefluent

我有一个RAW方法用于将GUIDS作为参数的实体。

LOADONE (Guid CwObjectGuid, Guid CountryGuid) RAW

使用相应的正文:

SELECT * FROM dbo.Bid
WHERE Bid_CwObject_Guid = @CwObjectGuid 
AND ((Bid_CountryGuid = @CountryGuid) OR (@CountryGuid = '00000000-0000-0000-0000-000000000000' AND Bid_CountryGuid IS NULL))

参数CountryGuid可以是默认的Guid。但是,生成的方法会检查参数是否为默认值。在这种情况下,该方法将返回NULL

        if ((countryGuid.Equals(CodeFluentPersistence.DefaultGuidValue) == true))
        {
            return null;
        }

我不想要那张支票。我可以以某种方式阻止它吗?

1 个答案:

答案 0 :(得分:0)

默认情况下,该属性不可为空,因此CodeFluent会检查该值是否等于默认值(请参阅Simon's answer)。您可以将usePersistenceDefaultValue设置为false

来停用此行为
<cf:method name="load" body="LOADONE(...) RAW" rawBody="...">
  <cf:parameter name="countryGuid" usePersistenceDefaultValue="false"/>
</cf:method>

您还可以将可空的guid发送到数据库

<cf:method name="load" body="LOADONE(Guid? id) RAW" rawBody="..." />