I have got the following DTOs:
[Route("/images/{imageId}/upload", "PUT")]
public class GetImageWithStream : IRequiresRequestStream
{
public Stream RequestStream { get; set; }
public string imageId { get; set; }
}
///images/{imageId}/upload?url={imageUrl}
[Route("/images/{imageId}/upload", "PUT")]
public class GetImageWithUri
{
public string imageId { get; set; }
public string url { get; set; }
}
/images/1/upload -> this should routed to the first DTO
/images/1/upload?url=something.jpg -> this should routed to the second DTO
Now both of them routed to the first DTO and in case of the second path the stream is a NullStream of course. With the first path the stream is good but the imageId is null.
Or I can imagine something like this:
[Route("/images/{imageId}/upload", "PUT")]
public class GetImageWithStream : IRequiresRequestStream
{
public Stream RequestStream { get; set; }
public string imageId { get; set; }
public string url { get; set; }
}
Is it possible to handle the same PATH with different ways in ServiceStack?