2017-07-17 5 views
0

私はasp.netのC#プロジェクトで作業しています。ここでは、ユーザーからDD/MM/YYYYとして入力しています。 (:01:55.800Z 2017-07-15T08)=「IMPL:DateBean」フォーマット<タイプの/>日付をxml Webサービスの日付に変換するasp.net

は、だから私はと日付形式を想定したWebサービスへのユーザによる入力日付を渡したいです

今私は、任意の有用なトピックにあなたの助けと参照が今まで私は、私は「」エラーをすることができます取得していますしようとしている価値は何

をappreacitedさ

YYYY-DD-MMTへの入力を変換する問題を抱えています暗黙のうちに型 "[string]、[system.datetime]またはwhatsoverを変換します。 「mywebservice.DateBean

を入力するためにこれは私がWebサービスを呼び出すために構築しています方法です:

MyWebService.top_ELEMENT_NAME srvBeanIn = new MyWebService.top_ELEMENT_NAME(); 
srvBeanIn.input = new MyWebService.webServiceElementTop(); 
srvBeanIn.input.paymentOrder = new MyWebService.ELEMENT_NAME[1]; 
srvBeanIn.input.paymentOrder[0] = new MyWebService.ELEMENT_NAME(); 

は、これは私が日付

var input = "17/07/2017"; 
CultureInfo provider = CultureInfo.InvariantCulture; 
const string inputFormat = "dd/MM/yyyy"; 
DateTime parsed; 


try 
{ 
    parsed = DateTime.ParseExact(input, inputFormat, provider); 
    Debug.WriteLine("parsed nj wire= " + parsed); 
    var isoResult = parsed.ToUniversalTime().ToString("o"); //--> 2017-07-15T08:01:55.800Z 
    srvBeanIn.input.paymentOrder[0].MyDate.date = parsed; 

} 
catch (FormatException) 
{ 
    Debug.WriteLine("{0} is not in the correct format.", input); 
} 

に合格しようとしている方法です。そして、ここです私がWSDLに持っているXMLタグ

<xsd:complexType name="DateBean"> 
     <xsd:complexContent mixed="false"> 
      <xsd:extension base="impl:BaseSOIBean"> 
      <xsd:sequence> 
       <xsd:element name="date" nillable="true" type="xsd:dateTime" /> 
      </xsd:sequence> 
      </xsd:extension> 
     </xsd:complexContent> 
     </xsd:complexType> 


<xsd:element name="swiftDate" nillable="true" type="impl:DateBean" /> 
+0

あなたはwebserviceで使用しているDataContractSerializerですか?詳細な情報としてここにコードを入力する必要があります。 – codeSetter

+0

私はソースコードを持っていませんが、Webサービスのwsdlを持っています。要素は次のとおりです。

+0

リクエストの作成方法そのコードはあらかじめ重要です。 – codeSetter

答えて

0

最初に入力した文字列をDateTime指定された入力フォーマットを使用して、その後、UTCに変換し、ISO文字列に変換isoResult

var input = "17/07/2017"; 

CultureInfo provider = CultureInfo.InvariantCulture; 

const string inputFormat = "dd/MM/yyyy"; 
DateTime parsed; 

try { 
    parsed = DateTime.ParseExact(input, inputFormat, provider); 
    var isoResult = parsed.ToUniversalTime().ToString("o"); 
} 
catch (FormatException) { 
    Console.WriteLine("{0} is not in the correct format.", input); 
} 

がDateBeanを作成するためにISOの文字列を使用します。

+0

こんにちは、あなたの返信をありがとうございます。 varを渡すのと同じエラーが発生するか、文字列がtihsエラーで受け入れられません<暗黙のうちに 'string'の型を 'MyWebService.DateBean'に変換できません。 –

+0

私は 'DateBean'型に慣れていません。それはあなたのWebServiceのカスタムタイプですか?変換された文字列またはDateTimeを使用して新しいDateBeanオブジェクトをインスタンス化し、要求に追加してください。 –

+0

私はparsed.ToUniversalTime()をToString( "o")に変換できますか? [var]または[string]は受け入れられないためです。 –

関連する問題