可能重复:
如何从getter或setter调用异步方法?
我正在尝试实现一个在其中使用Sqlite等待的属性:
public int ID {
get
{
if (_id != null)
{
return _id;
}
if (string.IsNullOrEmpty(ImageName))
{
return -1;
}
var query = CurrentConnection.Table<Image>().Where(i => i.ImageName == ImageName);
var result = await query.ToListAsync();
...other code
Run Code Online (Sandbox Code Playgroud)
但是,由于属性未设置为等待(尝试过,不起作用),我不能在属性中使用await.
除了使用方法而不是属性之外,还有什么方法可以解决这个问题?
用于照片的Facebook FQL API 指出从API返回的照片的最大分辨率为960x960:
Photo对象具有等效的src连接.使用photo_src FQL,您可以检索具有以下尺寸的图像:960,720,480,320,180,130,75像素.
但是,某些图像以更高的分辨率上传.有时甚至更高.
定期浏览Facebook时,您可以看到这些图片并查看其完整尺寸.但是,我似乎无法找到任何方法来获得API中的原始分辨率.
这可能吗,我错过了什么?如果不是 - 为什么?
我已从此链接下载了SQLite的Visual Studio 2012的Windows Phone 8扩展.
但是,在编译时,我收到此错误:
引用的SDK"SQLite.WP80,Version = 3.7.15.2"不支持正在构建"Any CPU"的项目的处理器体系结构.请考虑将项目的目标处理器体系结构(在visual studio中,这可以通过Configuration Manager完成)更改为SDK支持的体系结构之一:"x86,ARM".FacebookRandomizerWindowsPhone
显然,我已经尝试在Visual Studio 2012中更改项目中的平台目标,就像我开发的Windows 8应用程序一样,这样做有效.
但是,在Windows Phone 8应用程序中,我无法更改平台目标,只能更改顶部的平台,而不会更改平台目标:

有人有这个问题吗?
我正在构建一个Windows 8应用程序,并提出以下异常:
SuspensionManager失败
运行以下代码时:
private async void OnSuspending(object sender, SuspendingEventArgs e)
{
var deferral = e.SuspendingOperation.GetDeferral();
await SuspensionManager.SaveAsync();
deferral.Complete();
}
Run Code Online (Sandbox Code Playgroud)
该方法的第三行发生异常,并没有真正提供任何细节.
我在网上找不到任何有用的东西.谁看过这个吗?
//编辑
这可能与我使用dynamicWindows 8 Facebook SDK 的类型变量这一事实有关.
是dynamic变量不允许?
//编辑2
这是dynamic变量的用法:
dynamic result = await FB.GetTaskAsync("fql", parameters);
if (result.data.Count > 0)
{
return result.data[0].src_big as string;
}
Run Code Online (Sandbox Code Playgroud)
以及异常的调用堆栈:
mscorlib.dll!System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(System.Threading.Tasks.Task task) + 0x5e bytes
mscorlib.dll!System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task task) + 0x35 bytes
mscorlib.dll!System.Runtime.CompilerServices.TaskAwaiter.GetResult() + 0x16 bytes
FacebookRandomizer.exe!FacebookRandomizer.App.OnSuspending(object sender, Windows.ApplicationModel.SuspendingEventArgs e) Line 86 + 0xa5 bytes C#
[Native to …Run Code Online (Sandbox Code Playgroud) 我有一个C#WebClient返回的以下JSON:
"\n\n\n{\n \"resultCount\":1,\n \"results\": [\n{\"wrapperType\":\"artist\", \"artistType\":\"Artist\", \"artistName\":\"Jack Johnson\", \"artistLinkUrl\":\"http://itunes.apple.com/us/artist/jack-johnson/id909253?uo=4\", \"artistId\":909253, \"amgArtistId\":468749, \"primaryGenreName\":\"Rock\", \"primaryGenreId\":21}]\n}\n\n\n"
Run Code Online (Sandbox Code Playgroud)
或者,更清楚地说:
{
"resultCount ":1,
"results ":[
{
"wrapperType ":"artist ",
"artistType ":"Artist ",
"artistName ":"Jack Johnson ",
"artistLinkUrl ":"http://itunes.apple.com/us/artist/jack-johnson/id909253?uo=4 ",
"artistId ":909253,
"amgArtistId ":468749,
"primaryGenreName ":"Rock ",
"primaryGenreId ":21
}
]
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试将其反序列化为类,如下所示:
thejsonresult = JsonConvert.DeserializeObject<JsonResult>(WebRequest.Json);
Run Code Online (Sandbox Code Playgroud)
但收到以下错误:
读取字符串出错.意外的令牌:StartObject.第7行,第2位.
我很迷茫,找不到任何关于此的文件.有人知道吗?
在C#中,我有一个类,foo它继承自类bar,而类继承自类foobar.
在foo构造函数中,我想foobar直接调用构造函数,而不是调用bar构造函数.我试过这样的事情:
public foo(int i): base : base(i)
Run Code Online (Sandbox Code Playgroud)
显然这不起作用.如果不通过bar构造函数,你将如何使它工作?
我有一个带有2个表的Microsoft SQL数据库:dog和cat.
"dog"表有一个名为"food"的主键列,它与"cat"表中的一个名为"food"的列有关,该表用作外键.
表之间的关系有一个"on delete cascade"规则集,所以当我从"dog"表中删除一行时,"cat"表中的relveant行也应该被删除.
但是"cat"表中的行会被net删除,它们会保留.我使用Microsoft SQL数据库管理器删除"dog"表中的行.
知道为什么会这样吗?我是否需要使用特殊的delete sql命令以这种方式删除行?
//编辑
表的脚本是:
USE [VELES]
GO
/****** Object: Table [dbo].[Periods] Script Date: 01/18/2011 14:52:19 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Periods](
[PeriodID] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,
[PeriodName] [nvarchar](50) COLLATE Hebrew_CS_AS NULL,
[PeriodStartDate] [smalldatetime] NOT NULL,
[PeriodEndDate] [smalldatetime] NOT NULL,
CONSTRAINT [PK_Periods] PRIMARY KEY CLUSTERED
(
[PeriodID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
USE [VELES]
GO
/****** Object: Table [dbo].[Exams] …Run Code Online (Sandbox Code Playgroud) c# ×5
.net ×1
async-await ×1
c#-5.0 ×1
cascade ×1
exception ×1
facebook ×1
facebook-fql ×1
inheritance ×1
json ×1
json.net ×1
oop ×1
photo ×1
sql ×1
sql-server ×1
sqlite ×1
windows-8 ×1