我正在編寫一個服務來處理使用文件的mutlipart/formdata編碼從瀏覽器發送的請求。如何使用ServiceStack處理多部分表單數據?
我看到我可以通過使用接口IRequiresRequestStream裝飾我的請求DTO並提供一個名爲RequestStream的屬性來訪問原始輸入流。但是這樣做似乎意味着我無法獲得任何填充的請求屬性,甚至包含URL中包含的那些屬性。例如,我有我的要求的路線設置如下
[Route("/document/{Type}/{Id}", "GET,PUT,POST/DELETE")]
public class UploadFileRequest : IReturn<UploadFileResponse>, IRequiresRequestStream
{
public long Id { get; set; }
public string Type { get; set; }
public Stream RequestStream { get; set; }
}
當我發送PUT請求這種服務,我看到RequestStream屬性設置,因爲我想它是,但標識和類型屬性爲空。 https://groups.google.com/forum/#!msg/servicestack/l9qFvZNbuT0/dwyRQKBhmlMJ似乎表明會發生這種情況。
有什麼辦法可以獲取路由參數並仍然訪問請求流嗎?即使這樣,我似乎需要處理解析表單數據,但希望我可以找到一個圖書館來做到這一點。