我想知道是否有人知道任何设计模式,文章或其他信息,以解决在多个设备之间同步设置的问题.
说一个网站,一个iPhone应用程序和一个iPad应用程序; 未来的设备随后出现.
任何信息将不胜感激.如果您需要更多信息,请正确回答,请说明,我可以详细说明问题.
我正在使用HttpWebRequest的BeginGetRequestStream上传多个文件,但我想更新我在发布数据流时编写的进度控件.
应该怎么做,我已经尝试从将数据推送到流中的循环中调用Dispatch.BeginInvoke(如下所示)但是它锁定浏览器直到它完成所以它似乎在某种worker/ui线程死锁中.
这是我正在做的事情的代码片段:
class RequestState
{
public HttpWebRequest request; // holds the request
public FileDialogFileInfo file; // store our file stream data
public RequestState( HttpWebRequest request, FileDialogFileInfo file )
{
this.request = request;
this.file = file;
}
}
private void UploadFile( FileDialogFileInfo file )
{
UriBuilder ub = new UriBuilder( app.receiverURL );
ub.Query = string.Format( "filename={0}", file.Name );
// Open the selected file to read.
HttpWebRequest request = (HttpWebRequest)WebRequest.Create( ub.Uri );
request.Method = "POST";
RequestState state = new RequestState( request, …Run Code Online (Sandbox Code Playgroud) 我已将WebApp移至Azure App Service环境,并启用了新的LocalCache选项,如https://azure.microsoft.com/zh-cn/documentation/articles/app-service-local-cache/
但是,应该告诉您缓存已准备就绪的环境变量不存在。
如果我使用Kudo并转到Process Explorer,请单击w3wp(没有scm标签)进程的属性,然后单击Environment Variables,我看到的唯一变量是:
WEBSITE_LOCAL_CACHE_OPTION Always
APPSETTING_WEBSITE_LOCAL_CACHE_OPTION Always
WEBSITE_LOCAL_CACHE_SIZEINMB 1000
APPSETTING_WEBSITE_LOCAL_CACHE_SIZEINMB 1000
WEBSITE_LOCALCACHE_ENABLED True
Run Code Online (Sandbox Code Playgroud)
但不是我需要的那个:
WEBSITE_LOCALCACHE_READY
Run Code Online (Sandbox Code Playgroud)
我对正在发生的事感到困惑;任何人都可以给我任何想法尝试吗?
我试图在屏幕上获得实际的鼠标坐标,这样我就可以在那个位置创建一个原生窗口,但我似乎无法找到正确的方法来正确执行此操作.
我尝试过各种各样的东西,目前我最接近的是:
this.contentMouseX and this.contentMouseY
Run Code Online (Sandbox Code Playgroud)
这给了我现阶段的协调,这很好,然后我补充说:
NativeApplication.nativeApplication.activeWindow.x and activeWindow.y
Run Code Online (Sandbox Code Playgroud)
哪个很接近,但这并没有考虑应用程序标题栏.
必须有一种更简单,更直接的方式来做到这一点我相信,任何人都可以提供建议,因为我无法在谷歌上找到它?
我尝试过localToGlobal,它不起作用,似乎'全局'意味着在应用程序内,而不是全局到屏幕,这对我没用.这是一个显示失败的例子......
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
import mx.core.Application;
private function click(evt:MouseEvent):void
{
var pt:Point = new Point( this.contentMouseX, this.contentMouseY );
var global:Point = Application.application.localToGlobal( pt );
trace( "local_x: " + pt.x + " x " + pt.y );
trace( "global_x: " + global.x + " x " + global.y );
}
]]>
</mx:Script>
<mx:HBox horizontalAlign="center" width="100%">
<mx:Button id="butt" label="Click" click="click(event)" />
</mx:HBox>
</mx:WindowedApplication>
Run Code Online (Sandbox Code Playgroud)