小编Bal*_*ngh的帖子

如何在Windows Phone 8中的HttpClient请求中发送帖子正文?

我已经编写了下面的代码来发送标题,发布参数.问题是我使用SendAsync,因为我的请求可以是GET或POST.如何将POST Body添加到此代码中,以便如果有任何帖子正文数据,则会在我发出的请求中添加它,如果它的简单GET或POST没有正文,则会以此方式发送请求.请更新以下代码:

HttpClient client = new HttpClient();

// Add a new Request Message
HttpRequestMessage requestMessage = new HttpRequestMessage(RequestHTTPMethod, ToString());

// Add our custom headers
if (RequestHeader != null)
{
    foreach (var item in RequestHeader)
    {

        requestMessage.Headers.Add(item.Key, item.Value);

    }
}

// Add request body


// Send the request to the server
HttpResponseMessage response = await client.SendAsync(requestMessage);

// Get the response
responseString = await response.Content.ReadAsStringAsync();
Run Code Online (Sandbox Code Playgroud)

c# httpclient windows-phone-8

43
推荐指数
2
解决办法
13万
查看次数

如何将CancellationTokenSource附加到DownloadStringTaskAsync方法并取消异步调用?

我创建了一个示例示例,使用async和await方法使用WebClient调用链接现在我想附加取消异步调用功能.但我无法获得CancellationTokenSource令牌并将DownloadStringTaskAsync附加到此取消令牌.以下是我的代码可以告诉我如何实现这一目标.

private async void DoWork()
        {
            this.Cursor = Cursors.WaitCursor;
            Write("DoWork started.");
            cts = new CancellationTokenSource();
            WebClient wc = new WebClient();
            string result = await wc.DownloadStringTaskAsync(new Uri("http://gyorgybalassy.wordpress.com"));

            if (result.Length < 100000)
            {
                Write("The result is too small, download started from second URL.");
                result = await wc.DownloadStringTaskAsync(new Uri("https://www.facebook.com/balassy"));
            }
            Write("Download completed. Downloaded bytes: " + result.Length.ToString());
            Write("DoWork ended.");
            this.Cursor = Cursors.Default;
        }

        private void btnCancel_Click(object sender, EventArgs e)
        {
            Write("Cancellation started.");
            this.cts.Cancel();
            Write("Cancellation ended.");
        }
Run Code Online (Sandbox Code Playgroud)

当我的取消按钮调用cts.Cancel时,不会取消DownloadStringTaskAsync调用.为什么取消按钮无法取消异步通话?

c# async-await c#-5.0 cancellationtokensource .net-4.5

13
推荐指数
2
解决办法
4448
查看次数

我需要在SQL脚本文件中自动执行SQL Azure数据库备份.我怎么能这样做?

目前我每天都在生成SQL脚本以备份SQL Azure数据库.我需要使用一些免费软件自动化这个过程.我怎样才能实现这一目标?

注意: - 我需要以SQL Script的形式将备份带到某个本地机器.

database backup azure azure-sql-database

12
推荐指数
1
解决办法
7030
查看次数

Windows Phone使用NSpeex编码和解码音频.遇到解码问题?

我正在尝试使用Nspeex对录制的音频进行编码,然后通过互联网进行传输并在另一端进行解码.我正在Windows Phone 7/8中完成所有这些工作.要编码和解码我正在使用以下代码.但是在解码时我没有正确地恢复结果,我可以再次播放.任何人都可以为我提供在WP7/8录制的音频上运行的编码和解码代码:

private static Microphone mic = Microphone.Default;

        private static byte[] EncodeSpeech(byte[] buf, int len)
        {
            BandMode mode = GetBandMode(mic.SampleRate);
            SpeexEncoder encoder = new SpeexEncoder(mode);

            // set encoding quality to lowest (which will generate the smallest size in the fastest time)
            encoder.Quality = 1;
            int inDataSize = len / 2;

            // convert to short array
            short[] data = new short[inDataSize];
            int sampleIndex = 0;
            for (int index = 0; index < len; index += 2, sampleIndex++)
            {
                data[sampleIndex] = …
Run Code Online (Sandbox Code Playgroud)

c# audio encoding windows-phone-7 nspeex

8
推荐指数
1
解决办法
1517
查看次数

如何将字符串转换为印度货币格式?

我试图将字符串转换为印度货币格式,如果输入是"1234567"然后输出应为"12,34,567"

我写了下面的代码,但它没有给出预期的输出.

 CultureInfo hindi = new CultureInfo("hi-IN");
 string text = string.Format(hindi, "{0:c}", fare);
 return text;
Run Code Online (Sandbox Code Playgroud)

谁能告诉我怎么做?

c# windows-8 .net-4.5

6
推荐指数
1
解决办法
1万
查看次数

IO读写操作的TPL Dataflow实现中的内存问题

我试图使用文件IO操作实现读写操作,并将这些操作封装在一起TransformBlock,以使这些操作线程安全,而不是使用锁定机制.

但问题是,当我尝试并行写入5个文件时,有一个异常的内存,并且在使用此实现时它阻止了UI线程.该实现在Windows Phone项目中完成.请说明这个实现有什么问题.

文件IO操作

public static readonly IsolatedStorageFile _isolatedStore = IsolatedStorageFile.GetUserStoreForApplication();
public static readonly FileIO _file = new FileIO();
public static readonly ConcurrentExclusiveSchedulerPair taskSchedulerPair = new ConcurrentExclusiveSchedulerPair();
public static readonly ExecutionDataflowBlockOptions exclusiveExecutionDataFlow 
    = new ExecutionDataflowBlockOptions
{
    TaskScheduler = taskSchedulerPair.ExclusiveScheduler,
    BoundedCapacity = 1
};

public static readonly ExecutionDataflowBlockOptions concurrentExecutionDataFlow 
    = new ExecutionDataflowBlockOptions
{
    TaskScheduler = taskSchedulerPair.ConcurrentScheduler,
    BoundedCapacity = 1
};

public static async Task<T> LoadAsync<T>(string fileName)
{
    T result = default(T);

    var transBlock = new TransformBlock<string, T>
       (async fName …
Run Code Online (Sandbox Code Playgroud)

c# file-io multithreading dataflow tpl-dataflow

6
推荐指数
1
解决办法
499
查看次数

在SQL Azure中调试存储过程的方法?

我正在研究SQL Azure,并在其中编写了一些存储过程.现在,当使用来自数据库的EXEC查询执行该存储过程时,我需要调试它以查找错误(如果有的话).有没有办法在SQL Azure中这样做?

注意: - 我在SQL Server 2008 R2上使用SQl Azure.

sql debugging stored-procedures azure-sql-database

5
推荐指数
1
解决办法
4287
查看次数

如何使用文本元素从下到上显示SVG1.1中的文本?

我正在尝试从下到上以垂直方式显示文本。我正在使用文本元素渲染 SVG1.1 中的文本。

一种方法是使用变换和旋转文本,有没有更好的方法可以做到这一点,因为我什至尝试过编写模式:tb或bt,但在tb的情况下,它从上到下正确渲染,但在bt的情况下,它是不做同样的事情。

html svg

5
推荐指数
1
解决办法
1785
查看次数

在React原生视频中实现自适应视频流

我正在Ios的一个反应原生项目中实现视频流.我正在使用React-Native-Video播放器.如何根据不断变化的网络质量在React Native中实现自适应视频流质量?

ios react-native

5
推荐指数
0
解决办法
526
查看次数

在服务器上显示来自多个数据源的客户端上的分页数据

我们有3个产品供用户订购.

例如:

  • Itunes音乐
  • Itunes Books
  • AppleStore应用程序

鉴于:

3个微服务,根据时间戳为订单历史记录提供3个单独的分页响应.

需要:

按时间戳的降序显示所有3个来源的订单历史记录,并在用户滚动时将它们分页.即,根据时间戳和显示对来自3个来源的响应进行排序和合并.

用户可能购买了:

  1. 从所有3项服务
  2. 从任何2
  3. 从任何1
  4. 没有

此外,购买的时间表也可能有所偏差.例如:用户仅用Itunes音乐购买了10首歌曲.

我能想到的方法:

1.仅对客户进行举重:

将并行调用所有3个API,等待所有API的响应.在本地存储它们.

根据时间戳进行合并和排序.

剪切最上面的n个项目并显示在设备上.

当用户滚动时,将检查本地是否存在任何数据并相应地调用API.

2.仅在服务器端进行重装:

有一个代理人将与所有服务进行对话.

收到客户的要求后fetchData (noOfItems, fetchedUntilTimestamp),

代理应通过调用getData(noOfItems, fetchFromTimeStamp)其中的每一个来从不同的源获取数据.

每个数据源都应从时间戳fetchFromTimeStamp及以下开始获取noOfItems并返回数据列表.

代理人应:

  1. SORTED_LIST =基于时间戳的多个来源的数据排序列表
  2. RESULT_LIST = SORTED_LIST的第一个noOfItems
  3. fetchedUntilTimestamp = RESULT_LIST的最后一项的时间戳

代理应返回客户端:RESULT_LIST + fetchedUntilTimeStamp

从下一个请求开始,客户端应fetchData (noOfItems, fetchedUntilTimestamp)使用fetchedUntilTimeStamp从前一个呼叫的服务器接收的呼叫进行呼叫

两者中哪一个更受青睐?有没有更好的解决方法呢?

architecture android client-server ios

5
推荐指数
1
解决办法
178
查看次数