沿 ServiceStack 中的路径强制 DTO 属性
Forcing DTO properties along the path in ServiceStack
我有一些带有布尔字段 IsLocked 的 DTO class。
像
/.../{IsLocked}
这样的路线很容易搭建
并将此字段分配给查询值。
但我需要类似
/.../lock
/.../unlock
的东西
那就是根据路由强制将 IsLocked 字段设置为 true 或 false。
我可以在没有 CustomRequestBinder 且不解析的情况下做到这一点 Request.RawUrl 吗?
在此先感谢您的帮助。
这看起来像 2 个不同的操作,所以我考虑声明 2 个操作,例如:
[Route("/files/{FileName}/lock")]
public class LockFile { ... }
[Route("/files/{FileName}/unlock")]
public class UnlockFile { ... }
否则,您可以将路由声明为正常,并且 return 计算布尔值 属性 比较字符串,例如:
[Route("/files/{FileName}/{LockString}")]
public class LockOrUnlockFile
{
public string FileName { get; set; }
public string LockString { get; set; }
public bool IsLocked { get { return LockString == "lock"; } }
}
我有一些带有布尔字段 IsLocked 的 DTO class。
像
/.../{IsLocked}这样的路线很容易搭建 并将此字段分配给查询值。
但我需要类似
/.../lock /.../unlock的东西 那就是根据路由强制将 IsLocked 字段设置为 true 或 false。
我可以在没有 CustomRequestBinder 且不解析的情况下做到这一点 Request.RawUrl 吗?
在此先感谢您的帮助。
这看起来像 2 个不同的操作,所以我考虑声明 2 个操作,例如:
[Route("/files/{FileName}/lock")]
public class LockFile { ... }
[Route("/files/{FileName}/unlock")]
public class UnlockFile { ... }
否则,您可以将路由声明为正常,并且 return 计算布尔值 属性 比较字符串,例如:
[Route("/files/{FileName}/{LockString}")]
public class LockOrUnlockFile
{
public string FileName { get; set; }
public string LockString { get; set; }
public bool IsLocked { get { return LockString == "lock"; } }
}