ServiceStackは私の要求でDateTimeプロパティを引数として使用しているようには思えません。私は "Bad Request"メッセージを受け取りました...例外の他の有用な詳細はありません。内部例外はhtmlコード(切り捨て)を示し、そしてちょうど{「型定義で始まるはずです 『』期待してシリアル化された型 『はErrorResponse』 ...」ServiceStack DateTimeデシリアライズ問題
を私のクライアントでは言う:
private DateTime _selectedReportDate;
public DateTime SelectedReportDate
{
get { return _selectedReportDate; }
set { SetProperty(ref _selectedReportDate, value); }
}
....
var txResults = await ServiceClient.Instance.GetAsync(new PaymentSummaries()
{
Date = SelectedReportDate
});
サービスモデル:
[Route("/report/paymentsummaries/{Date}", "GET")]
public class PaymentSummaries : IReturn<List<PaymentSummary>>
{
public DateTime Date { get; set; }
}
サービスインタフェース:
[Authenticate]
public class PaymentSummariesService : Service
{
public List<PaymentSummary> Get(PaymentSummaries request)
{
var results = Db.SqlList<Data.OrmLite.SpResponse.ReconcilePaymentSummaryRecord>("EXEC [Report].[ReconcilePaymentsSummary] @date", new { date = request.Date });
return results.ConvertAll(x => x.ConvertTo<PaymentSummary>());
}
}
私は "悪いRequest" を取得していますエラー。
私は変更:
Date = SelectedReportDate
クライアントコードで
Date = new DateTime()
に、それは作業を行い、そして何らかの理由でサービスインタフェースコードを打ちます。
アップデートは
ここでリクエストヘッダです:gzipで、受け入れ収縮:アプリケーション/ JSONに のUser-Agentを:ServiceStack .NETクライアント
がGET HTTP/1.1のAccept-エンコーディング http://devservicestack:44345/report/paymentsummaries/2016-11-30T13%3A09%3A15.6795974-05%3A00 4.54ホスト:devservicestack:44345 Cookie:ss-id = F4Bt4aMonhyFQcfqmSmR; ss-pid = K6aJMA17Xw31qIVy1z8V; SS-OPT = TEMP
レスポンスヘッダは私を伝える:
[HttpException(0x80004005が)。潜在的に危険なRequest.Path 値がクライアントから検出された(:)]
System.Web.HttpRequest.ValidateInputIfRequiredByConfig()9827624
System.Web.PipelineStepManager.ValidateHelper(のHttpContextコンテキスト)+53
[MCVE](http://stackoverflow.com/help/mcve)を作成してください。 –
あなたが渡している価値は! – Aravind
スローされた例外をキャッチすると、ErrorMessageプロパティは何ですか? –