windows Phone 8.1(C#)中的GetNetworkUsageAsync()

windows Phone 8.1(C#)中的GetNetworkUsageAsync(),c#,windows-phone-8.1,windows-8.1,C#,Windows Phone 8.1,Windows 8.1,我想使用GetNetworkUsageAsync来获取发送和接收字节。 当我这样做时,会调用GetNetworkUsageAsyncHandler,但不会立即调用。 我想立即使用ByteSent和BytesReceived。 我能做什么 private void MakeDataUsageChart() { //Make days of Month GregorianDates = MakeMonthGregorianDate(YearGregorian,

我想使用GetNetworkUsageAsync来获取发送和接收字节。
当我这样做时,会调用GetNetworkUsageAsyncHandler,但不会立即调用。
我想立即使用ByteSent和BytesReceived。
我能做什么

private void MakeDataUsageChart()
    {
        //Make days of Month
        GregorianDates = MakeMonthGregorianDate(YearGregorian, MonthGregorian);

        localTime = new DateTime(2015, 9, 2, 0, 0, 0);
        StartTime = new DateTimeOffset(localTime, TimeZoneInfo.Local.GetUtcOffset(localTime));
        localTime = new DateTime(2015, 9, 3, 0, 0, 0);
        EndTime = new DateTimeOffset(localTime, TimeZoneInfo.Local.GetUtcOffset(localTime));
        InternetConnectionProfile.GetNetworkUsageAsync(StartTime, EndTime, DataUsageGranularity.Total, new NetworkUsageStates()).Completed = GetNetworkUsageAsyncHandler;

        for (int count = 0 ; count <= GregorianDates.Count -1 ; count++)
        {
            ChartDatasGregorian.Add(new Data()
            {
                CategoryDownload = GregorianDates[count],
                ValueDownload = BytesReceived,
                CategoryUpload = GregorianDates[count],
                ValueUpload = BytesSent,
                CategoryTotal = GregorianDates[count],
                ValueTotal = BytesReceived + BytesSent
            });
        }
        this.DataUsageLineSeries.DataContext = ChartDatasGregorian;
    }
    private void GetNetworkUsageAsyncHandler(IAsyncOperation<IReadOnlyList<NetworkUsage>> asyncInfo, AsyncStatus asyncStatus)
    {
        if (asyncStatus == AsyncStatus.Completed)
        {
            IReadOnlyList<NetworkUsage> networkUsages = asyncInfo.GetResults();

            foreach (NetworkUsage networkUsage in networkUsages)
            {
                string BytesSents = networkUsage.BytesSent.ToString();
                string BytesReceiveds = networkUsage.BytesReceived.ToString();
                BytesSent = Convert.ToInt64(BytesSents);
                BytesReceived = Convert.ToInt64(BytesReceiveds);

                //Column2DataPlan.Text = BytesSents + "   " + BytesReceiveds;
            }

        }
    }
private void MakeDataUsageChart()
{
//以月为单位
GregorianDates=MakeMonthGregorianDate(YearGregorian,MonthGregorian);
localTime=新的日期时间(2015,9,2,0,0,0);
StartTime=newdatetimeoffset(localTime,TimeZoneInfo.Local.GetUtcOffset(localTime));
localTime=新的日期时间(2015,9,3,0,0,0);
EndTime=newdatetimeoffset(localTime,TimeZoneInfo.Local.GetUtcOffset(localTime));
InternetConnectionProfile.GetNetworkUsageAsync(开始时间、结束时间、DataUsageGranularity.Total、新NetworkUsageStates())。已完成=GetNetworkUsageAsynchHandler;

对于(int count=0;count,就我而言,与其调用等待的方法并分配
Completed
事件,不如使用等待运算符调用该方法,然后继续所需的逻辑

e、 g:

await InternetConnectionProfile.GetNetworkUsageAsync(...);
//The content of GetNetworkUsageAsyncHandler can be moved here.

我希望它会有帮助。

好的。我想说一下问题的答案。非常感谢穆罕默德·查曼帕拉。
我只是稍微改变了一下:

IReadOnlyList<NetworkUsage> asyncInfo = await InternetConnectionProfile.GetNetworkUsageAsync(StartTime, EndTime, DataUsageGranularity.Total, new NetworkUsageStates());

        foreach (NetworkUsage networkUsage in asyncInfo)
        {
            string BytesSents = networkUsage.BytesSent.ToString();
            string BytesReceiveds = networkUsage.BytesReceived.ToString();
            BytesSent = Convert.ToInt64(BytesSents) / 1024 / 1024;
            BytesReceived = Convert.ToInt64(BytesReceiveds) / 1024 / 1024;
        }
IReadOnlyList asyncInfo=await InternetConnectionProfile.GetNetworkUsageAsync(StartTime、EndTime、DataUsageGranularity.Total、new NetworkUsageStates());
foreach(网络使用情况asyncInfo中的网络使用情况)
{
string BytesSent=networkUsage.BytesSent.ToString();
string BytesReceiveds=networkUsage.BytesReceived.ToString();
BytesSent=Convert.ToInt64(BytesSent)/1024/1024;
BytesReceived=转换为64(BytesReceived)/1024/1024;
}
我希望这对每个人都有帮助。

谢谢。

@Amin您可以找到更多关于