小编use*_*955的帖子

无法卸载/重新安装NuGet包

我已经使用Visual Studio Express 2012设置了我的项目,添加了一些C#代码,并成功编译/部署到模拟器.在某些时候我决定我想用JSON做一些事情,我发现我应该使用Json.NET框架,它可以作为NuGet包使用.我已使用该命令成功添加了此框架Install-Package Newtonsoft.Json.

我试图安装两天前MSVC提供的更新,安装失败,让我无法再次打开我的项目.重新安装MSVC没有帮助,所以我最终将Windows恢复到以前的状态.我能够再次打开我的项目,我想重新安装NuGet包(不知道它是安装在项目内部,而不是 MSVC).它在安装时给了我错误,所以我试图从包控制台卸载所有内容.

长话短说:

  • Nuget包控制台说"没有安装包" Get-Package
  • Install-Package Newtonsoft.Json再次运行给我错误

    无法安装Newtonsoft.Json 5.0.6.您尝试在引用"WindowsPhone,Version = v8.0"的项目中安装此程序包,但该程序包不包含与此框架兼容的程序集

  • "管理NuGet"包对话框显示"已安装"下没有包,但是在在线包中,列出了json包并标记为已安装(因此我无法尝试安装它)

现在我完全迷失了.我不知道如何正确安装包,也不知道如何正确地删除它.我的项目文件坏了吗?我该怎么修呢?


[编辑] 现在它变得更加混乱.我刚刚更新了NuGet包管理器(不是MSVC),并尝试重新安装Json.NET.

  • 在对话框中它仍未显示在"已安装"下
  • 在联机包列表中,它不再标记为已安装,但单击"安装"不会执行任何操作
  • Get-Package 在控制台中显示已安装的包

    PM> Get-Package
    
    Id                             Version              Description/Release Notes                                                                                                                                                                                            
    --                             -------              -------------------------                                                                                                                                                                                            
    Newtonsoft.Json                5.0.6                Json.NET is a popular high-performance JSON framework for .NET
    
    Run Code Online (Sandbox Code Playgroud)
  • 尝试使用`Uninstall-Package Newtonsoft.Json"卸载"无法找到"包'Newtonsoft.Json'"

  • 在我的项目文件夹中,我可以在packages目录中看到"Newtonsoft.Json.5.0.6"子文件夹

我应该从头开始创建一个新项目吗?:/


packages.dgml的内容:

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph GraphDirection="LeftToRight" xmlns="http://schemas.microsoft.com/vs/2009/dgml">
  <Nodes />
  <Links />
  <Categories>
    <Category Id="Projekt" />
    <Category Id="Paket" />
  </Categories>
  <Styles>
    <Style …
Run Code Online (Sandbox Code Playgroud)

c# packages visual-studio nuget windows-phone-8

40
推荐指数
3
解决办法
8万
查看次数

使用node.js通过CA证书验证X509证书

我正在寻找一种使用提供给我的CA证书来验证X509格式的客户端证书的node.js方法(这些证书都不是由我创建/管理的,我的软件只需要验证发送给它的蜜蜂) 。

我已经找到了完成这项工作的几个模块,但是每个模块都有问题:

  • X509可以使用进行操作x509.verify(cert, CABundlePath, cb),但是它需要从FS读取证书,而且我已经将它们存储在内存中了。这很麻烦,因为到达我应用程序的每个Web请求都将完成此操作。
  • 看起来PKI.js可以做到,但是他们的示例对我不起作用,但抱怨文件丢失,因此我什至无法尝试。
  • 我尝试了node-forge,但是虽然我不确定我是否正确使用了它们(它们没有任何API文档),但它forge.pki.BadCertificate从抛出了一个错误forge.pki.verifyCertificateChain(caStore, [ cer ], cb)
  • 当尝试使用pem时,使用简单的方法pem.verifySigningChain(cer, [ ca ], cb)会抱怨在从中加载文件时会出错/var/...。即使可行,我也会避免使用此lib作为依赖openssl命令行工具的方式,我想避免

现在,我感到非常愚蠢,因为我无法通过上述任何模块来完成此简单任务。有人可以给我指出一个简单的解决方案,该解决方案可以让我使用给定的CA证书来验证X509证书的签名/有效性吗?:s

[编辑]基本上,我需要openssl verify -verbose -CAfile ca-crt.pem client1-crt.pemNode.js,但依赖于OpenSSL的命令行工具,并没有该证书暂时保存到磁盘。

[edit2]是否可以仅使用https://nodejs.org/api/crypto.html#crypto_verify_verify_object_signature_signatureformat

verification ssl certificate ca node.js

10
推荐指数
1
解决办法
5370
查看次数

在ios中搜索城市名称

我想在我的iPad应用程序中提供用户输入字段,用户可以在其中键入城市或位置的名称,应用程序应显示用户可以选择的可能城市/位置列表,我可以获得地理坐标从(在a上添加标记MKMapView).

我试过了CLGeocoder,但似乎它只给我一个结果,加上结果不准确.例如,将"Stutt"作为地址字符串产生"Straubing,德国"作为结果,wheareas"Stuttgart"将提出"斯图加特"(正确)作为结果(因此我预计"斯图特"至少有2个结果).此外,在美国有一个叫斯图加特的城市,结果也没有给出.(我使用了本页最底部的示例代码:https://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/LocationAwarenessPG/UsingGeocoders/UsingGeocoders.html)

任何人都可以根据用户文本输入指导我找到适合城市名称/位置查找的解决方案吗?

geolocation ipad ios clgeocoder

9
推荐指数
1
解决办法
4511
查看次数

在uitableview中的resignFirstResponder崩溃

在我的UITableViewi有一组自定义单元格包含UITextField.我发现(困难的方式),显然离开当前视图(通过推动新的视图控制器或解除活动视图('返回'))将使我的应用程序崩溃,当键盘仍然可见时.

要在用户仍在编辑时隐藏键盘UITextField,但视图已更改,我[self.view endEditing:YES];在推送新视图控制器之前添加,也在viewWillDisappear方法中添加.

现在,我的应用程序仅崩溃了5个中的1个以隐藏键盘.在这里,我可能已经了解了这个原因:当细胞移出屏幕时,它会被破坏/回收,所以它可以在需要时再次出列.这意味着,一旦我的单元格和包含的文本字段移出屏幕,向其发送resignFirstResponder消息(手动或通过[self.view endEditing:YES];,应用程序将崩溃.这是回溯:

#0  0x012e309b in objc_msgSend ()
#1  0x05956888 in dyld_stub_usleep ()
#2  0x003ff056 in -[UIResponder resignFirstResponder] ()
#3  0x003c697f in -[UITextField resignFirstResponder] ()
#4  0x003c6ab1 in -[UIView(UITextField) endEditing:] ()
#5  0x00012c0a in -[MyController viewWillDisappear:] (self=0x7419e90, _cmd=0x52aa27e, animated=1 '\001') at MyController:121
#6  0x003ee9a2 in -[UINavigationController _startTransition:fromViewController:toViewController:] ()
#7  0x003e932a in -[UINavigationController _startDeferredTransitionIfNeeded] ()
#8  0x003e8fb6 in -[UINavigationController _popViewControllerWithTransition:allowPoppingLast:] ()
#9  0x003e9142 …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c uitableview uitextfield

8
推荐指数
2
解决办法
5234
查看次数

自定义UIPopoverController?

你怎么能创建一个UIPopOverController如下所示:

iPad UIPopoverController

是定制的UIView,还是某种形式的UIPopOverController

customization ipad uipopovercontroller ios ios5

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

了解libuv/epoll/非阻塞网络IO

我试图了解非阻塞网络 IO 在Node.js/中如何工作libuv。我已经发现文件IO 是使用libuv工作线程完成的(因此,在后台线程中)。然而,在很多地方都指出网络epollIO 是使用诸如、等系统调用以非阻塞方式完成的kqueue(取决于操作系统)。

现在我想知道这是否意味着实际的 IO 部分 ( read())仍然在主线程上完成,从而阻塞,即使epoll使用了eg?据我了解,epoll仅通知可用事件,但实际上并不执行读/写操作。至少在我发现的示例中(例如http://davmac.org/davpage/linux/async-io.htmlepoll总是与系统调用结合使用read,这是一个阻塞IO操作。

换句话说,如果libuv使用单线程并且epoll在数据可供读取时收到通知,那么接下来的读取操作是否正在主线程上执行,从而可能阻塞主线程上的其他操作(考虑网络请求)?

c io networking node.js libuv

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

在scala中正确使用Either,Try和Exception / ControlThrowable

在我的Scala代码(库以及应用程序)我目前使用的混合OptionTry,当任一两个感觉更apropriate。

我倾向于实现“ doSomething”方法,该方法可以在返回值成功或在失败时成功Try。也就是说,它们可以包含引发的代码,或者当我“手动”检测到错误时,人为地创建a Throwable并返回a Failure。这些方法的返回值因此为Try[ReturnType]

现在,我读到创建异常在某种程度上不是最优的,因为它创建了堆栈跟踪(因此很慢),而我什至不需要。我还看到了使用的子类的示例ControlThrowable,这些示例不会创建堆栈跟踪,但是它们也没有消息,Try当然也不会捕获它。

现在我的具体问题是,我一般都主张EitherTry,当我想要做的运行时错误处理/方法的返回值,并使用Try在那里我真正需要的情况下,只能东西(如第三方代码)?
这样,我就不必创建笨拙的Throwables,而只需使用例如字符串in Left来产生错误。

所以基本上:

  • Option:日常使用的东西是否具有价值
  • Try:在方法内捕获异常,但不用作返回值
  • Either:通用返回值,包含错误(字符串)或成功值

这个概念行得通吗,还是有一种更可行/更通用的方法?

error-handling scala exception-handling try-catch either

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

EKCalendarChooser多项选择不起作用

我试图用来EKCalendarChooser获取用户选择的多个日历。这是我呈现视图的方式:

EKCalendarChooser* dvc= [[[EKCalendarChooser alloc] initWithSelectionStyle:EKCalendarChooserSelectionStyleMultiple displayStyle:EKCalendarChooserDisplayAllCalendars eventStore:eventStore] autorelease];

dvc.selectedCalendars= self.selectedCalendars;
dvc.delegate= self;
dvc.contentSizeForViewInPopover= CGSizeMake(320.0, 480.0);

self.popOver= [[UIPopoverController alloc] initWithContentViewController:dvc];
[self.popOver release];
self.popOver.delegate= self;

UIBarButtonItem* item= sender;

[self.popOver presentPopoverFromBarButtonItem:item permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
Run Code Online (Sandbox Code Playgroud)

calendarChooserSelectionDidChange一旦选择一个或多个日历,但每次的selectedCalendars属性EKCalendarChooser为空,我都会收到消息!

- (void)calendarChooserSelectionDidChange:(EKCalendarChooser *)calendarChooser
{
   NSLog(@"selected %d calendars", calendarChooser.selectedCalendars.count);
}

2012-02-26 12:50:39.137 MyApp[8604:707] selected 0 calendars
2012-02-26 12:50:42.100 MyApp[8604:707] selected 0 calendars
Run Code Online (Sandbox Code Playgroud)

当我使用EKCalendarChooserSelectionStyleSingle而不是时EKCalendarChooserSelectionStyleMultiple,一切正常,并且我将通过selectedCalendars属性获得正确的所选日历。

我做错什么了EKCalendarChooser吗,或者这是一个错误?

objective-c uikit ipad eventkit ios5

4
推荐指数
1
解决办法
727
查看次数

在核心图形中绘制圆角矩形

我想复制默认iPad日历的事件标记,如下所示:

在此输入图像描述 我正在尝试使用coregraphics,绘制圆形rect的路径.这是我能想到的结果:

在此输入图像描述

正如您所看到的,iPad的版本在圆角处看起来更平滑.我试图使用更大的线宽,看起来像这样: 在此输入图像描述

我的代码看起来像这样(从这个网站获得):

UIColor* fillColor= [self.color colorByMultiplyingByRed:1 green:1 blue:1 alpha:0.2];

CGContextSetLineWidth(ctx, 1.0);
CGContextSetStrokeColorWithColor(ctx, self.color.CGColor);
CGContextSetFillColorWithColor(ctx, fillColor.CGColor);

CGRect rrect = self.bounds;

CGFloat radius = 30.0;
CGFloat width = CGRectGetWidth(rrect);
CGFloat height = CGRectGetHeight(rrect);

if (radius > width/2.0)
   radius = width/2.0;

if (radius > height/2.0)
   radius = height/2.0;    

CGFloat minx = CGRectGetMinX(rrect);
CGFloat midx = CGRectGetMidX(rrect);
CGFloat maxx = CGRectGetMaxX(rrect);
CGFloat miny = CGRectGetMinY(rrect);
CGFloat midy = CGRectGetMidY(rrect);
CGFloat maxy = CGRectGetMaxY(rrect);
CGContextMoveToPoint(ctx, minx, midy);
CGContextAddArcToPoint(ctx, minx, miny, midx, miny, radius); …
Run Code Online (Sandbox Code Playgroud)

core-graphics rounded-corners ipad ios ios5

4
推荐指数
1
解决办法
3114
查看次数

死锁使用异步和等待

我想在我的程序中实现的是以下callstack/workflow:

  1. 调度()
  2. 授权()
  3. httpPost()

我的想法是,这dispatch()将是异步的,而其他两种方法仍然是非同步的.但是,出于某种原因,除非我做了2 + 3,否则它对我不起作用.异步.也许我还有一些误解.

根据我的理解,我可以a)authorize()在调用异步方法时使用-keyword(这将挂起方法并在异步方法完成后继续),或者b)省略httpPost()-keyword而是调用异步方法的Task.Result返回值,将阻塞直到结果可用.


让我告诉你工作的例子:

private int dispatch(string options)
{
    int res = authorize(options).Result;
    return res;
}

static async private Task<int> authorize(string options)
{
    string values = getValuesFromOptions(options);
    KeyValuePair<int, string> response = await httpPost(url, values);
    return 0;
}

public static async Task<KeyValuePair<int, string>> httpPost(string url, List<KeyValuePair<string, string>> parameters)
{
    var httpClient = new HttpClient(new HttpClientHandler());
    HttpResponseMessage response = await httpClient.PostAsync(url, new FormUrlEncodedContent(parameters));
    int code = (int)response.StatusCode;
    response.EnsureSuccessStatusCode();

    string responseString = …
Run Code Online (Sandbox Code Playgroud)

.net c# http async-await

4
推荐指数
1
解决办法
1295
查看次数