我用swift开始了一个vanilla master详细项目.如果我添加新的视图控制器并设置自定义类,则模块列表为空,并且无法选择模块.错误消息"Interface Builder文件中的未知类".如果我运行代码,则会出现在控制台中.如何设置故事板以了解自定义类和模块?
它应该如何.模板中的两个类都很好.

它是怎么回事

我必须添加customModule="Target_Name" customModuleProvider="target"到界面构建器源代码中.那太烦人了!
更新:如果我将整个项目目录移动到另一个目录,例如移动到桌面,它可以工作.看起来我的名为"Repository"的目录已损坏.不知道为什么:(
版本信息:
我正在使用C#4.5,Entity Framework 6.0和MEF.
代码和单元测试
我创建了一个测试项目来解释这个问题:https: //skydrive.live.com/redir?resid = E3C97EC293A34048!2234
请打开UnitTest项目并尝试运行TestIfItWorks()单元测试.
问题
我想将非泛型DbSet转换为其通用版本,但我得到以下异常InvalidCastException: Cannot create a DbSet<IUser> from a non-generic DbSet for objects of type 'User':
var nonGeneric = context.Set(typeof(User));
var generic = nonGeneric.Cast<IUser>(); //Exception in here
Run Code Online (Sandbox Code Playgroud)
User类正在实现IUser,所以你会认为强制转换不应该是一个问题,除非DbSet代码仅限于具体的类(我希望不是我需要创建一个围绕非泛型DbSet的包装器将它转换为泛型DbSet或找到当前DbSet实现的替代方案).
如果您想知道我为什么使用接口,即使它们目前不受Microsoft支持,我会给您一些解释(希望这会过滤掉"不要那样做"而不是提供解决方案的响应):
我正在使用MEF和EntityFramework来创建一个松散耦合的数据层引擎,通过它我可以为每个项目提供实体(及其相应的配置).我一直在广泛使用Interfaces来定义引擎.使用MEF在运行时发现元数据和上下文中实体的具体实现.
摘自代码
[TestMethod]
public void TestIfItWorks()
{
//TODO: Please open the App.Config and change the PluginsPath to match the Plugins folder in your machine.
using (var dbContext = new MyContext()) //Please ignore this line for now. This was …Run Code Online (Sandbox Code Playgroud) 我需要一个聪明的正则表达式来匹配...这些:
<img src="..."
<img src='...'
<img src=...
Run Code Online (Sandbox Code Playgroud)
我希望匹配内部内容src,但仅当它被","或"无"包围时.这意味着<img src=..."或者<img src='...不能被接受.
任何想法如何将这3个案例与一个正则表达式相匹配.
到目前为止,我使用类似这样的东西("|'|[\s\S])(.*?)\1,我想要放松的部分是我[\S\s]用来匹配"缺失符号"的开头和结尾的hacky ....
例如,我想使用这个扩展:
import Foundation
extension String {
func exec (str: String) -> Array<String> {
....
}
}
Run Code Online (Sandbox Code Playgroud)
我应该在哪里保存它?我应该创建一个新文件extensions.swift吗?