Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 用于.NET可空日期的DynamoDB SDK_C#_.net_Amazon Dynamodb_Aws Sdk - Fatal编程技术网

C# 用于.NET可空日期的DynamoDB SDK

C# 用于.NET可空日期的DynamoDB SDK,c#,.net,amazon-dynamodb,aws-sdk,C#,.net,Amazon Dynamodb,Aws Sdk,我刚刚开始使用dynamodbsdk,我想知道它是否处理DynamoDBProperty属性的可空日期?它没有列在这里,所以我假设答案是否定的。如果答案是否定的,有没有人编写了dynamodb类型的转换器来处理他们可以共享的可为空的日期值?我找到了,但不确定我是否需要它 这是我写的转换器。如果其他人有更好的解决方案,请告诉我。如果你有同样的问题,希望它能帮助你 public class DynamoNullableDateConverter : IPropertyConverter {

我刚刚开始使用dynamodbsdk,我想知道它是否处理DynamoDBProperty属性的可空日期?它没有列在这里,所以我假设答案是否定的。如果答案是否定的,有没有人编写了dynamodb类型的转换器来处理他们可以共享的可为空的日期值?我找到了,但不确定我是否需要它

这是我写的转换器。如果其他人有更好的解决方案,请告诉我。如果你有同样的问题,希望它能帮助你

public class DynamoNullableDateConverter : IPropertyConverter
{
    public DynamoDBEntry ToEntry(object value)
    {
        DynamoDBEntry entry = new Primitive { Value = null };

        //Format - 2015-03-12T20:24:07.647Z
        if (value != null)
            entry = new Primitive { Value = ((DateTime)value).ToUniversalTime().ToString("yyyy-MM-ddTHH\\:mm\\:ss.fffZ") };

        return entry;
    }

    public object FromEntry(DynamoDBEntry entry)
    {
        Primitive primitive = entry as Primitive;

        if (primitive != null)
        {
            var dtString = primitive.Value.ToString();
            var value = DateTime.Parse(dtString, null, System.Globalization.DateTimeStyles.RoundtripKind);
            return value;
        }
        else 
            return (DateTime?)null;
    }
}

我也有类似的问题。我不仅需要为复杂类型
T
实现转换器,还需要为
IList
实现转换器。是否需要为类型
T
创建一个转换器,为
IList
创建另一个转换器?我如何才能做到这一点,并使用那些具有DynamoDB属性的转换器?