我有一个模型客户,我使用以下方法生成了该客户
rails g model客户名称:string
过了一段时间,我决定将模型重命名为customer_type,为此我们写了另一个迁移
rails g migration RenameCutomerToCustomerType
一切顺利,直到我有要求添加名为customer的模型.当我发出以下命令时,我开始得到"另一个迁移已经命名为create_customer"
rails g model顾客
我认为这种情况在基于CRUD的项目中很常见,请建议如何过来这个?这是rails的限制吗?
using System;
using System.Xml.Serialization;
using System.IO;
namespace Mailer {
public class ClientConfiguration {
public virtual bool Save(string fileName) {
XmlSerializer serializer = new XmlSerializer(typeof(ClientConfiguration));
using (StreamWriter writer = new StreamWriter(fileName)) {
serializer.Serialize(writer, this);
}
return true;
}
}
}
Run Code Online (Sandbox Code Playgroud)
在上面的代码中,我想存根/模拟serializer.Serialize方法以确保调用该方法.我用moq和NMock尝试了很多方法但是失败了.
请帮助我存根/模拟对序列化程序的调用.
我正在尝试使用C#匹配以下模式,并且找不到匹配项
正则表达式
^([[a-z][A-Z]]*):([[a-z][A-Z][0-9],]*)$
Run Code Online (Sandbox Code Playgroud)
示例字符串
Student:Tom,Jerry
Run Code Online (Sandbox Code Playgroud)
虽然同样的东西在ruby中起作用(使用Rubular验证它).知道为什么这不适用于c#?
代码块
public static KeyValuePair<string, IList<string>> Parse(string s)
{
var pattern = new Regex(@"(\w*):([\w\d,]*)");
var matches = pattern.Matches(s);
if (matches.Count == 2)
{
return new KeyValuePair<string, IList<string>>(matches[0].Value, matches[1].Value.Split(','));
}
throw new System.FormatException();
}
Run Code Online (Sandbox Code Playgroud)