我正在使用NSOperationQueue,我想在NSOperationQueue中添加新的NSOperations.它是一个存在于我所拥有的类的单例实例中的队列.如果我可以通过传递委托将所有内容移动到静态类中,这将使事情变得更容易.
现在这是我的代码,因为它存在于 - 这是一个 cellForRowAtIndexPath
NSString *key = [NSString stringWithFormat:@"%@%@",cell.dataItem.ItemID, cell.dataItem.ManufacturerID];
if (![self.imgOperationInQueue valueForKey:key]) {
ImageOperation *imgOp = [[ImageOperation alloc] initWithItemID:cell.dataItem.ItemID withManufacturerID:cell.dataItem.ManufacturerID withReurnType:kThumbnail];
imgOp.identifier = [NSString stringWithFormat:@"%i", cell.tag];
imgOp.delegate = self;
[[SharedFunctions sharedInstance] addImageOperationToQueue:imgOp];
[imgOp release];
// store these in the dictionary so we don;t queue up requests more than once
[self.imgOperationInQueue setValue:cell.dataItem.ItemID forKey:key];
}
Run Code Online (Sandbox Code Playgroud)
如果我可以将委托添加为参数,我可以将所有这些代码放入共享单例类中,并从我的应用程序中的任何位置调用它.
我想我可以使用NSNotification - 或者我可以使用某种块?
我正在使用jQuery和jQuery.form插件来提交我的表单(也使用ASP.Net MVC).
问题是用户在网站的一部分中使用表单身份验证,如果他们的身份验证cookie在页面上的时间到期而不是返回状态302,这将是重定向到登录页面,我仍然得到200 ?
在FireBug中,我看到302 Found,然后我的登录页面接下来是200,这是发送回我的Ajax调用的状态代码.如果我从未看到302发送回jQuery表单插件,如何检测到它们已被注销?
我使用dispatch_async在后台运行一堆项目,有时我想杀死队列中的内容 - 这可能吗?例如,此代码在视图上运行,然后用户返回屏幕.无论后退导航如何,所有这些已触发的操作都会继续运行.理想情况下,我想从运行中杀死这些项目:
dispatch_async(dispatch_get_global_queue(2, 0), ^{
for (int i=0; i<[self.manufacturers count]; i++) {
NSString *manufacturerID = [[[self.manufacturers objectAtIndex:i] ManufacturerID] stringValue];
[self doSync:manufacturerID withIndex:i setTimer:YES];
}
});
Run Code Online (Sandbox Code Playgroud)
如果我创建一个队列并命名它,然后在视图的dealloc上释放它,这将被调用,它们仍然继续运行.
我在我的应用程序中收到错误,我不知道如何弄明白,有没有人见过这个:
# Binary Image Name Address Symbol
0 RepZio 0x002bd302 testflight_backtrace
1 RepZio 0x002bc996 TFSignalHandler
2 libsystem_platform.dylib 0x39ce0062 _sigtramp
3 CoreFoundation 0x2edde118 __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__
4 CoreFoundation 0x2ed52256 _CFXNotificationPost
5 Foundation 0x2f737c2c -[NSNotificationCenter postNotificationName:object:userInfo:]
6 Foundation 0x2f73c50a -[NSNotificationCenter postNotificationName:object:]
7 UIKit 0x3180b2cc -[UIApplication _performMemoryWarning]
8 libdispatch.dylib 0x39ba0d06 _dispatch_client_callout
9 libdispatch.dylib 0x39ba9802 _dispatch_source_invoke$VARIANT$mp
10 libdispatch.dylib 0x39ba773c _dispatch_main_queue_callback_4CF$VARIANT$mp
11 CoreFoundation 0x2ede6818 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__
12 CoreFoundation 0x2ede50ec __CFRunLoopRun
13 CoreFoundation 0x2ed4fc26 CFRunLoopRunSpecific
14 CoreFoundation 0x2ed4fa0a CFRunLoopRunInMode
15 GraphicsServices 0x33a50282 GSEventRunModal
16 UIKit 0x315f3048 UIApplicationMain
17 MyAppName …Run Code Online (Sandbox Code Playgroud) 我想从这里安装Visual Studio Professional for mac:
https://www.visualstudio.com/vs/visual-studio-mac/
无论我下载哪个版本,社区,专业版或企业版,它总是安装了社区.
有其他人遇到这个问题并知道解决方法吗?
我在我的控制器中使用临时数据 - 非常简单,当出现问题时:
TempData("StatusMessage") = "You have no items set to Auto-Ship."
Run Code Online (Sandbox Code Playgroud)
然后在每个页面上我都有一个用户控件,如下所示:
<div class="error-container">
<% If TempData.ContainsKey("ErrorMessage") Then%>
<script> $('div.error-container').show();</script>
<div class="msg-error"><p><%=TempData("ErrorMessage") %></p></div>
<% End If%>
<% If TempData.ContainsKey("StatusMessage") Then%>
<script> $('div.error-container').show();</script>
<div class="msg-status"><p><%=TempData("StatusMessage")%></p></div>
<% End If%>
<ul></ul>
</div>
Run Code Online (Sandbox Code Playgroud)
问题是当我确实在tempdata中添加了一个错误时它在第一个请求中正确显示,但是在下一个请求时也会再次出现 - 这显然非常令人困惑而且不是一个理想的行为.
我没有使用任何IoC,我确实在使用它时看到了相同问题的帖子.
我需要根据日期对某些记录进行分组,但它是一个日期和时间字段,我需要忽略时间部分,只需按日期部分进行分组 - 这是我现在的SQL:
SELECT
AutoShipItems.CustomerID,AutoShipItems.NextOrderDate,
Customer.FirstName,Customer.LastName, Customer.EmailAddress
FROM
AutoShipItems
INNER JOIN Customer ON
AutoShipItems.CustomerID =Customer.CustomerID
WHERE
(AutoShipItems.NextOrderDate <= GETDATE())
GROUP BY
AutoShipItems.CustomerID, AutoShipItems.NextOrderDate,
Customer.FirstName, Customer.LastName,
Customer.EmailAddress
ORDER BY
AutoShipItems.NextOrderDate
Run Code Online (Sandbox Code Playgroud) 是否可以根据用户角色以不同方式输出缓存控制器操作?或者如果他们是否经过身份验证?
我从Web服务获取JSON响应,但它没有被我正在使用的JSON解析器所需的[]标记包装,因此我需要在将其传递给JSON解析器之前将这些字符追加并添加到我的NSString中.
以下是我到目前为止的情况:
NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
responseString = [responseString stringByAppendingFormat:@"]"];
Run Code Online (Sandbox Code Playgroud)
附加工作现在完全正常我只需要预先设置[对此,似乎无法找到这种方法.
只是试图进入核心数据的东西,并立即开始越过.在我的AppDelegate中,我有以下代码:
- (NSManagedObjectModel *)managedObjectModel {
if (managedObjectModel_ != nil) {
return managedObjectModel_;
}
NSString *modelPath = [[NSBundle mainBundle] pathForResource:@"DataModel" ofType:@"momd"];
NSURL *modelURL = [NSURL fileURLWithPath:modelPath];
managedObjectModel_ = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
return managedObjectModel_;
}
Run Code Online (Sandbox Code Playgroud)
其中@"DataModel"是我的.xcdatamodel文件的名称 - 这是正确的吗?
objective-c ×4
asp.net-mvc ×3
ios ×2
ipad ×2
core-data ×1
ios5 ×1
iphone ×1
jquery ×1
macos ×1
nsoperation ×1
sql-server ×1
tempdata ×1