我们有一个基于ASP.NET MVC 4和Web API的现有应用程序.该网站的管理部分使用简单成员资格.我有兴趣将应用程序升级到MVC 5/Web API 2,以利用已添加的一些新功能.但看起来它们可能不兼容.
具体来说,在将NuGet中的RC包安装到我的解决方案中的一个项目中并更新web.config信息之后,应用程序在启动期间开始在调用的行上死亡WebSecurity.InitializeDatabaseConnection(),但有以下异常:
[MethodAccessException: Attempt by security transparent method 'WebMatrix.WebData.PreApplicationStartCode.OnConnectionOpened(System.Object, WebMatrix.Data.ConnectionEventArgs)' to access security critical method 'System.Web.WebPages.HttpContextExtensions.RegisterForDispose(System.Web.HttpContextBase, System.IDisposable)' failed.]
WebMatrix.WebData.PreApplicationStartCode.OnConnectionOpened(Object sender, ConnectionEventArgs e) +70
WebMatrix.Data.Database.OnConnectionOpened() +70
WebMatrix.Data.Database.EnsureConnectionOpen() +51
WebMatrix.Data.Database.QueryValue(String commandText, Object[] args) +63
WebMatrix.WebData.DatabaseWrapper.QueryValue(String commandText, Object[] parameters) +13
WebMatrix.WebData.SimpleMembershipProvider.GetUserId(IDatabase db, String userTableName, String userNameColumn, String userIdColumn, String userName) +206
WebMatrix.WebData.SimpleMembershipProvider.ValidateUserTable() +87
Run Code Online (Sandbox Code Playgroud)
使用我尚未升级的简单成员资格的同一解决方案中的其他项目继续正常工作.
当然,谷歌搜索更多信息会引发大量的点击,但WebMatrix没什么特别的.
FWIW:我知道Microsoft已经引入了(又一个)成员身份和身份解决方案,但除非有一种方法可以将其用于现有的简单成员资格表,或者是我们所有现有用户数据的无缝迁移路径,这不是一个真正的选择为了我们.
我刚刚尝试了一下我们应用程序当前主干的新结帐.我正在使用Visual Studio 2012,但是按照MS的说明升级现有项目.更新到MVC 5/Web API 2/EF 6后,该应用程序启动运行就好了.
web.config删除中没有明确的信任要求.我加入了代码这个问题来Global.asax.cs …
c# asp.net-mvc simplemembership asp.net-mvc-5 asp.net-identity
我遇到过一个案例,其中与LINQ to SQL相当不错的东西似乎对Entity Framework来说非常迟钝(或者可能是不可能的).具体来说,我有一个包含rowversion属性的实体(用于版本控制和并发控制).就像是:
public class Foo
{
[Key]
[MaxLength(50)]
public string FooId { get; set; }
[Timestamp]
[ConcurrencyCheck]
public byte[] Version { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我希望能够将实体作为输入,并找到最近更新的所有其他实体.就像是:
Foo lastFoo = GetSomeFoo();
var recent = MyContext.Foos.Where(f => f.Version > lastFoo.Version);
Run Code Online (Sandbox Code Playgroud)
现在,在数据库中,这将起作用:两个rowversion值可以相互比较而没有任何问题.在使用LINQ to SQL之前我做了类似的事情,它映射了rowversionto System.Data.Linq.Binary,可以进行比较.(至少在表达式树可以映射回数据库的程度上.)
但在Code First中,属性的类型必须是byte[].并且两个数组无法与常规比较运算符进行比较.有没有其他方法来编写LINQ to Entities将理解的数组的比较?或者将数组强制转换为其他类型,以便比较可以通过编译器?
我有一种感觉,我忽略了一些基本的东西,但有什么更好的方法来找到它而不是在互联网上出错?
我有一个相当基本的用户界面.我的视图UIViewController是一个子类,+layerClass是CAGradientLayer.根据用户的操作,我需要移动一些UI元素,并更改背景渐变的值.代码看起来像这样:
[UIView animateWithDuration:0.3 animations:^{
self.subview1.frame = CGRectMake(...);
self.subview2.frame = CGRectMake(...);
self.subview2.alpha = 0;
NSArray* newColors = [NSArray arrayWithObjects:
(id)firstColor.CGColor,
(id)secondColor.CGColor,
nil];
[(CAGradientLayer *)self.layer setColors:newColors];
}];
Run Code Online (Sandbox Code Playgroud)
问题是我在这个块中对子视图所做的更改动画就好了(东西移动和淡化),但渐变颜色的变化却没有.它只是交换.
现在,文档确实说动画块中的Core Animation代码不会继承块的属性(持续时间,缓动等).但是,根本没有定义动画交易吗?(文档的含义似乎是你会得到一个默认动画,我得不到.)
我必须使用显式CAAnimation来完成这项工作吗?(如果是这样,为什么?)
在LinkedIn的SDK 中有一些关于Bitcode支持的旧问题.他们似乎同意LinkedIn的文档,他们的SDK版本1.0.7支持Bitcode.
但是,当我尝试存档我们的应用程序(使用Xcode 7.3.1,并包含该SDK)时,我在链接阶段遇到此错误:
无法生成位码包,因为'/用户/ ...:LD 绝密 .../LinkedIn-sdk.framework/LinkedIn-SDK(豆荚-dummy.o)'没有满位码建成.必须从Xcode Archive或Install build for architecture arm64生成bitcode的所有目标文件和库
clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)
检查框架(按照之前的问题)似乎在arm64和armv7切片中显示了Bitcode:
otool -arch arm64 -l linkedin-sdk | grep '__bitcode'
otool -arch armv7 -l linkedin-sdk | grep '__bitcode'
Run Code Online (Sandbox Code Playgroud)
有没有人看到这个结果?有没有什么办法解决它,其他比关机位码支持的应用程序?
在切线相关的说明中,如果我关闭Bitcode并获得成功的构建,我会得到大约10个这些警告(在我看来,就像他们的CI系统配置错误):
处理/ Users/... 编辑 .../linkedin-sdk.framework/linkedin-sdk(LISDKAccessToken.o):警告:/ export/home/tester/hudson/data/workspace/MP_TRUNKDEV_POSTCOMMIT/ios-sdk_3939eff14f36b69f3fa38c9db85f0b182a1fc733/build/linkedin-sdk /ModuleCache/22OID7V7UWIA2/Foundation-73OMMCO56G8Z.pcm:没有这样的文件或目录
注意:运送静态库时应禁用模块调试.
我注意到当我在iPhone OS 3.0上使用Spotlight搜索"音乐"(例如)时,应用程序"Midomi"会出现在Spotlight结果中."Midomi"并不完全匹配"音乐",但它出现在结果中.
如何为我的应用指定其他关键字,以便在使用Spotlight进行搜索时出现,例如Midomi正在做什么?
我想自定义我在OS X上绘制窗口标题栏的方式.具体来说,我想做一些像Twitterrific应用程序,其中有自定义关闭按钮,没有最小/最大按钮,以及窗口标题文本是对的.与Twitterrific不同,我不打算自定义绘制整个窗口(尽管我并不完全反对).
我已经看过Cocoa With Love上的RoundWindow示例以及Apple提供的RoundTransparentWindow示例,但似乎都不合适.
我一直在阅读斯坦福大学的安全远程密码协议,它看起来非常适合iPhone应用程序运行的环境.不幸的是,我无法找到协议的良好Objective-C实现.据我所知,SDK中的加密库也没有实现它.
有谁知道这样的实现?
如果做不到的话,你认为最好的选择是什么?我可以尝试将OpenSSL构建到我的应用程序中,但对于这一小块来说,这感觉真的很重要.我可以尝试将JavaScript或Java实现转换为Objective-C,但这违反了加密的#1规则(使用已知的,经过测试的实现).
几个后续项目:首先,它应该从上下文中显而易见,但我将需要一些与闭源商业用法兼容的东西(我链接的JavaScript实现,我后来注意到,是AGPL).
此外,假设我最终使用OpenSSL,我很难找到使用它来执行SRP的示例.他们的网站声称代码在那里,但我无法在OpenSSL文档中找到任何证据,或者在源代码中贪图(v 0.9.8k).(或者我是否认真地误读了一些内容,我仍然需要将其中一个补丁应用到OpenSSL源代码?)
编辑:
此时我真正可以使用的是即用型代码,相当完整的配方,或者在OpenSSL中使用SRP的某种示例.我很确定我可以通过协议文档从头开始拼凑一些东西,但我真的试图避免重新发明轮子,如果我可以帮助它.
我们终于将我们的第一个iPhone应用程序提交到应用程序商店(或尝试),但我似乎无法让iTunes Connect接受上传.
我尝试过这两个网站("您上传的二进制文件无效.签名无效,或者没有使用Apple提交证书签名.")和Application Loader("Info.plist不包含CFBundleResourceSpecification ").
经过大量阅读(包括这些问题),重新阅读和谷歌搜索,我可以这样说:
codesign -vvvv MyApp.app表明没有问题.现在,确实在构建的应用程序中,Info.plist不包含CFBundleResourceSpecification密钥,但是对于我来说,这个值应该来自哪里,或者我还需要添加什么才能使其工作.(我可以使用Apple的搜索找到的唯一参考是一些代码签名发布说明 ......但是,正如我上面提到的,代码签名步骤是成功的,据我所知.)
有没有人遇到过这个问题的解释,我还没有提到过?
编辑:这是构建代码签名步骤FWIW的(略微编辑)输出:
我有一个应用程序,我从网络下载了一些资源,并对每个资源进行了一些处理.我不希望这个工作发生在主线程上,但是它非常轻量级且低优先级,因此所有这些都可以在同一个共享工作线程上发生.这似乎是一件好事,因为建立和拆除所有这些工作线程所需的工作(其中没有一个会长寿,等等).
但令人惊讶的是,似乎没有一种简单的方法可以在单个共享线程上完成所有这些工作,而不是为每个任务生成一个新线程.由于多年来似乎已经出现了大量实现并发的途径,这一点变得复杂.(明确NSThreads,NSOperationQueueGCD等)
我是否高估了产生所有这些线程所涉及的开销?我是不是应该不流汗,并使用更简单的每线程任务方法?使用GCD,并假设它比线程(重新)使用更聪明?
multithreading nsurlconnection nsoperationqueue grand-central-dispatch ios
假设我在我的应用程序中实现了相当少的自定义配置和内容视图:
struct ExampleContentConfiguration {
let name: String
let score: Int
}
extension ExampleContentConfiguration: UIContentConfiguration {
func makeContentView() -> UIView & UIContentView {
return ExampleContentView(configuration: self) // [1]
}
func updated(for state: UIConfigurationState) -> ExampleContentConfiguration {
return self
}
}
final class ExampleContentView: UIView, UIContentView {
var configuration: UIContentConfiguration // [2]
init(configuration: ExampleContentConfiguration) {
self.configuration = configuration
super.init(frame: .zero)
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
Run Code Online (Sandbox Code Playgroud)
其背后的两个协议没有并发注释。另一方面,UIView(及其子类)被标记为@MainActor。因此,当我将Strict Concurrency Checking构建设置设置为Complete …
我可能会问一些非常简单的事情,但我找不到能够帮助我的教程或示例.
我已经学会了如何从Parse中检索字符串数据,现在我正在尝试检索图像,认为它会更容易......但我无法弄明白.
我正在尝试加载1张图像(我将每天更换),UIImageView从Parse.com中的数据浏览器中检索图像.
有人可以帮忙吗?
这就是我所做的:
- (void)viewDidLoad {
[super viewDidLoad];
[self performSelector:@selector(retrieveFromParse)];
}
- (void) retrieveFromParse {
PFQuery *retrieveImage = [PFQuery queryWithClassName:@"outfitDay"];
[retrieveImage findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
if (!error) {
loadimageArray = [[NSArray alloc] initWithArray:objects];
}
}];
}
Run Code Online (Sandbox Code Playgroud)
我错过了您指示UIImageView加载该信息的部分.
提前致谢!!
我在我的应用程序中使用滑块.它有默认的颜色黑色我想将其改为棕色.
我按照'在SDK帮助中更改滑块外观'
我用过代码
NSString *path = [[NSBundle mainBundle] pathForResource:@"sliderBrown"
ofType:@"png"];
UIImage *minimumTrackImg = [[UIImage alloc] initWithContentsOfFile:path];
[voiceLevelSlider setMinimumTrackImage:minimumTrackImg
forState:UIControlStateSelected];
Run Code Online (Sandbox Code Playgroud)
但在这种情况下我的滑块就消失了.
请赐教我这个.
我正在使用一些颜色,它们似乎根本不正确.附加的图像显示了预期的结果,实际的模拟器和设备上的结果.正如你所看到的那样,Gimp认为RGB(0,16,60)是什么以及我得到的输出是什么[UIColor colorWithRed:0.0 green:16.0 blue:60.0 alpha:1.0];
由于我的alpha是1.0,我不相信我的背景有任何混色.
欢迎任何关于这里发生的事情的建议.alt text http://img200.imageshack.us/img200/3710/picture4uu.png
iPhone结果:
alt text http://img33.imageshack.us/img33/9264/picture3xb.png
ios ×5
iphone ×5
objective-c ×3
c# ×2
app-store ×1
asp.net-mvc ×1
bitcode ×1
cocoa ×1
cocoa-touch ×1
cryptography ×1
linkedin ×1
linker ×1
macos ×1
openssl ×1
rowversion ×1
security ×1
spotlight ×1
sql-server ×1
swift ×1
uicolor ×1
uiimageview ×1
uikit ×1
uislider ×1
uiview ×1
xcode7 ×1