我是 ServiceStack
新手。我有一个相当大的 .NET C# 解决方案,使用 Cambium
对象关系管理。
我正在添加 ServiceStack
WebService 项目到我的解决方案。我关注了the guide .正常工作。
现在我想添加 UserService:Service
返回 User
DTO 使用 TranslateTo
或 PopulateWith
喜欢写here .
[Route("/user")]
[Route("/user/{Id}")]
public class User
{
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Email { get; set; }
}
public class UserService : Service
{
private Users users = new Users();
public UserResponse Get(User request)
{
return new UserResponse { Result = users.Single(request.Id).TranslateTo<User>() };
}
}
但是我找不到这些方法。
我得到 <my_object_returned_from_database> does not contain a definition for 'TranslateTo'
.
我确实克隆了 ServiceStack
存储库,我无法在任何扩展中找到这些方法的任何实现。
我错过了什么?非常感谢您的帮助!
最佳答案
对于ServiceStack v3,这是目前在NuGet中可用的稳定版本、TranslateTo
和相关方法是ServiceStack.Common
命名空间中的扩展方法。请注意,如果您正在克隆 GitHub 存储库,则 v3 不是 master
分支。因此,将 using ServiceStack.Common
添加到您的文件中应该足以导入扩展方法。
ServiceStack v4 是 GitHub 中的 master
分支,是一个预览版。我认为 TranslateTo 扩展方法已重命名为 ConvertTo
。
关于c# - 如何使用 ServiceStack DTO TranslateTo 和 PopulateWith?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19543302/