我正在寻找一个.xsd模式文件放入我的Visual Studio目录,为Castle Windsor IoC容器的xml配置文件提供intellisense.我查看了下载的Windsor代码,以及Google搜索的几种不同方式.我看到很多人问同样的问题,但没有答案.有人知道是否有这样的文件?
在开发我的Web应用程序时,我需要在3种不同的环境中切换 - 开发,UAT和Prod.我的配置文件中有3个不同的数据库连接.我已经看到通过更改所有引用然后重新构建解决方案来手动完成这些设置,并且还完成了预处理器指令.是否有一种简单的方法可以根据某些变量执行此操作,以便在每次部署到新环境时不必修改配置?
这是我的情况.我编写了一个WCF服务,该服务调用我们供应商的代码库之一来执行操作,例如Login,Logout等.此操作的一个要求是我们有一个后台线程来接收由该操作引起的事件.例如,Login操作在主线程上发送.然后,由于登录,从供应商服务接收到多个事件.可以收到1,2或几个事件.在计时器上运行的后台线程接收这些事件并在wcf服务中触发事件以通知新事件已到达.
我已经在双工模式下实现了WCF服务,并计划使用回调来通知UI事件已到达.这是我的问题:如何将后台线程中的新事件发送到正在执行服务的线程?
现在,当我调用时OperationContext.Current.GetCallbackChannel<IMyCallback>(),OperationContext为null.是否有一种标准模式可以解决这个问题?
我在ServiceContract上使用PerSession作为我的SessionMode.
更新:我想我会通过演示如何从供应商代码接收事件来使我的确切方案更加清晰.我的库接收每个事件,确定事件是什么,并触发该特定事件的事件.
我有另一个项目,它是一个专门用于连接供应商服务的类库.我将发布服务的整个实现,以提供更清晰的图片:
[ServiceBehavior(
InstanceContextMode = InstanceContextMode.PerSession
)]
public class VendorServer:IVendorServer
{
private IVendorService _vendorService; // This is the reference to my class library
public VendorServer()
{
_vendorServer = new VendorServer();
_vendorServer.AgentManager.AgentLoggedIn += AgentManager_AgentLoggedIn; // This is the eventhandler for the event which arrives from a background thread
}
public void Login(string userName, string password, string stationId)
{
_vendorService.Login(userName, password, stationId); // This is a direct call from the main thread to the vendor service …Run Code Online (Sandbox Code Playgroud) 我必须在这里做一些完全愚蠢的事情,但我无法将PLCrashReporter框架包含在我的项目中.以下是我获取框架的步骤:
我正在使用我的类文件中的框架
#import <CrashReporter/CrashReporter.h>
当我尝试在4.3模拟器下编译时,我收到以下错误:
体系结构i386的未定义符号:"_ OBJC_CLASS _ $ _ PLCrashReporter",引自:AppDelegate中的objc-class-ref + CrashReporting.o"_ OBJC_CLASS _ $ _ PLCrashReport",引自:AppDelegate中的objc-class-ref + CrashReporting.o ld:symbol( s)找不到架构i386 clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)
当我在设备下编译时,一切都很好.我需要包含某种标题或库搜索路径吗?
该应用程序在XCode 3下编译,在所有配置下都没有问题.
我正在创建小磁贴图像以存储在磁盘上并显示给用户.这是我目前执行此操作的过程:
当我尝试访问viewcontroller的视图时,我崩溃了.当我尝试在线研究时,我在后台创建视图是否安全时遇到了相互矛盾的结果.我正在读UIGraphicsGetCurrentContext调用应该是线程安全的,但也许不能在后台线程上访问UIView?我正在为iOS 4及更高版本编写应用程序.这是我正在使用的代码(tile是viewcontroller):
CGSize size = CGSizeMake(20.0f, 30.0f);
UIGraphicsBeginImageContext(size);
[tile.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
Run Code Online (Sandbox Code Playgroud)
尝试访问磁贴上的.view属性(EXC_BAD_ACCESS)时发生崩溃.重点是在后台渲染视图以防止锁定UI,因为有很多要处理的切片.
有安全的方法吗?
我正在使用委托方法shouldStartLoadWithRequest来捕获链接点击并处理我的应用程序内的特定情况,而不是允许webView导航到链接.在这段代码中,我试图将一个新的ViewController推入堆栈.在尝试推送视图后,我立即在控制台中看到以下消息:
WebKit discarded an uncaught exception in the webView:decidePolicyForNavigationAction:request:frame:decisionListener: delegate:
Run Code Online (Sandbox Code Playgroud)
我的代码看起来像这样:
-(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
if(decision logic){
MyViewController *vc = [[MyViewController alloc] init];
[self.navigationController pushViewController:vc animated:YES];
[vc release];
return NO;
}
return YES;
}
Run Code Online (Sandbox Code Playgroud)
我也试过使用模态而不是推新viewController.我得到了相同的结果.我应该在这里处理其他任何场景吗?
**编辑:想到这个.我试图推动的视图包含另一个视图UIWebView.我应该webView在过渡之前做些什么吗?我只是测试推送一个不包含a的不同视图控制器,webView它工作正常.
我正在测试我的应用程序中的应用程序购买.我在iTunes连接的沙箱中设置了我的测试帐户.我可以从"设置"中退出应用程序商店,然后在我的设备上完成购买流程,没有任何问题.它提示登录,我使用现有帐户,输入沙箱测试用户凭据,并能够购买或恢复产品.
问题是在整个会话期间以及当我从后台恢复应用程序时,我不断被提示重新输入iTunes应用商店密码.该对话框预先填写了我的测试用户ID,并要求输入密码.它也发生在我的应用程序在后台并且我正在使用其他应用程序时.从这里点击取消似乎没有任何负面影响.
我正在运行iOS 7.
SKPaymentQueue是否有可能导致提示再次显示?
这只是一个沙盒问题吗?
我一直在构建iOS应用程序超过2年,从未遇到过这个问题.我正在尝试存档用于测试版发布的应用.构建成功,但在过程的最后,Xcode报告"存档已取消".

构建日志不显示任何警告或错误.

有时,通过清理/清理构建文件夹/擦除派生数据,我可以使存档成功,但似乎没有模式.有没有人遇到过这个问题?在这种情况下,我甚至没有任何事情可以继续作为错误消息.
我刚刚开始使用NAnt.我正在从一个教程中工作,只是试图设置一个目标来清理我的构建解决方案.我的Visual Studio Solution结构如下:
NAnt .exe文件位于Tools/NAnt文件夹中.我的.build文件也在那里.这是我的.build文件:
<?xml version="1.0" encoding="utf-8" ?>
<project name="NAntTest" default="build" xmlns="http://nant.sf.net/release/0.86-beta1/nant.xsd">
<property name="solution.file.name" value="NAntTest.sln" />
<property name="project.config" value="debug" />
<target name="build" depends="clean.source" />
<target name="clean.source">
<exec program="${framework::get-framework-directory(framework::get-target-framework())}\msbuild.exe"
commandline="${solution.file.name} /t:Clean /p:Configuration=${project.config} /v:q"
workingdir="."/>
</target>
</project>
Run Code Online (Sandbox Code Playgroud)
这就是我所遵循的示例的格式.如果我尝试运行此构建,则会收到一条错误,指出项目文件不存在.在clean.source目标中,如果我将workingdir属性替换为基本解决方案文件夹的硬编码路径,则脚本将编译并正确运行.显然,如果我需要将项目移动到任何地方,这对于便携性来说并不理想.
如何让NAnt查看基本工作目录?
我正在尝试测试设备上运行的iOS版本中是否有特定的枚举.我正在使用以前版本的操作系统中没有的特定枚举.我已经知道如何使用respondsToSelector测试方法可用性,如下所示:
if ([self respondsToSelector:@selector(method:)]) {
}
Run Code Online (Sandbox Code Playgroud)
对枚举有类似的测试吗?如果没有,我该如何测试呢?