플렉스 app.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
creationComplete="init();">
<mx:Script>
<![CDATA[
import mx.rpc.events.ResultEvent;
private function init():void
{
updateFlexTime();
}
private function updateFlexTime():void
{
flexTimeLabel.text = new Date().toString();
flexLocalTimeLabel.text = new Date().toLocaleString();
}
private function refreshHandler(event:Event):void
{
dateTimeService.GetCurrentDateTimeAsString();
}
private function onGetCurrentDateTimeAsString(event:ResultEvent):void
{
var value:String = String(event.result);
var currentDate:Date = new Date(Date.parse(value));
remoteTimeLabel.text = currentDate.toString();
remoteLocalTimeLabel.text = currentDate.toLocaleString();
updateFlexTime();
}
]]>
</mx:Script>
<mx:Form>
<mx:FormItem label="Flex time:">
<mx:Text id="flexTimeLabel"/>
</mx:FormItem>
<mx:FormItem label="Remote time:">
<mx:Text id="remoteTimeLabel"
text="Press refresh button."/>
</mx:FormItem>
<mx:FormItem label="Flex local time:">
<mx:Text id="flexLocalTimeLabel"/>
</mx:FormItem>
<mx:FormItem label="Remote local time:">
<mx:Text id="remoteLocalTimeLabel"
text="Press refresh button."/>
</mx:FormItem>
<mx:Button label="Refresh"
click="refreshHandler(event)"/>
</mx:Form>
<mx:WebService id="dateTimeService"
endpointURI="http://localhost:2054/TestService.asmx"
wsdl="http://localhost:2054/TestService.asmx?wsdl">
<mx:operation name="GetCurrentDateTimeAsString"
resultFormat="object"
result="onGetCurrentDateTimeAsString(event)"/>
</mx:WebService>
닷넷 WebService를 :
namespace Lab.StackOverflow
{
using System;
using System.Web.Services;
/// <summary>
/// Test date/time service
/// </summary>
[WebService(Namespace = "http://lab.stackoverflow.com/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
public class TestService : WebService
{
/// <summary>
/// Get current date and time
/// </summary>
/// <returns>
/// Return UTC date time by RFC 1123 standard.
/// </returns>
[WebMethod]
public string GetCurrentDateTimeAsString()
{
return string.Format("{0:r}{1:zz}", DateTime.Now, DateTime.Now);
}
}
}
추가 정보 : 26 : 닷넷 webserice 코드에서 는 반환 날짜 2009-09-29T18로 : 21.3828335-06 : 00. Tue로 표시되는 플렉스 9 월 29 일 19:30:09 GMT-0600 2009. 문제는 개체를 업데이트 할 때마다 .Net이 현재 로컬 시간으로 업데이트 시간을 업데이트하지만 Flex가 각 업데이트 후에 매우 다른 시간을 표시한다는 것입니다. 올바른 현지 시간으로 변환하는 공식은 무엇입니까? –