Я пытаюсь написать функцию SQLCLR, которая принимает DateTime2 в качестве входных данных и возвращает другой DateTime2. Основываясь на этом post , я изменил параметр на DateTime типа C #, что дает мне требуемый уровень точности. Однако, поскольку входные данные могут быть нулевыми, я бы хотел, чтобы это было DateTime ?; тип возврата.
using System;
using Microsoft.SqlServer.Server;
namespace SqlServer.Functions {
public class UserDefinedFunctions {
[SqlFunction(DataAccess = DataAccessKind.None)]
public static DateTime? GetLocalTimeFromGMT(DateTime? dateTime) {
if (dateTime.HasValue)
return DateTime.SpecifyKind(dateTime.Value, DateTimeKind.Utc).ToLocalTime();
else
return (DateTime?)null;
}
}
}
Проблема в том, что я получаю следующую ошибку при попытке развернуть:
Ошибка 1 Не удается найти тип 'Nullable`1', так как он не существует или у вас нет разрешения. SqlServer.Functions
Я использую Sql Server 2008 и Visual Studio 2008.