2016-11-21 25 views
1

我尝试时出现此错误的种子我用虚假和法克尔数据库:错误CS1593“代表......不拿1个参数

error CS1593: Delegate 'Func<Faker, Address, short>' does not take 1 arguments 

这是我的代码片段和错误始于BuildingNumber方法。

if (!context.Addresses.Any()) 
      { 
       var faker = new Bogus.DataSets.Address(); 
       var addressSkeleton = new Faker<Resa.Models.Address>() 
       .RuleFor(a => a.Street, f => faker.StreetAddress()) 
       .RuleFor(a => a.Number, f => faker.BuildingNumber()) 
       .RuleFor(a => a.Latitude, f => faker.Latitude()) 
       .RuleFor(a => a.Longitude, f => faker.Longitude()) 
       .FinishWith((f,a) => { 
        Console.WriteLine("Address created with Bogus: {0}!", a.Street); 
       }); 

据当时https://github.com/bchavez/Bogus下的文档应该有方法没有参数。

+0

在我看来,它希望以((f,a)=> faker.BuildingNumber()')的形式表达lambda表达式。 –

回答

0

我觉得PROBL源em可能是你的“Number”属性是short类型,而“BuildingNumber”方法返回的是字符串而不是short。我不确定这个答案,只是看你的代码和虚假然后写下这个答案。我希望它有帮助。

+0

是的,我注意到,在我的地址模型中,我创建了一个属性“Number”,这是一个Int16,buildingnumber返回一个字符串。所以现在我需要弄清楚如何将它转换为int,但是转换似乎不起作用。 –

+1

也许你可以写一个faker类的扩展方法来将BuildingAddress返回为int16? – kizilsu

相关问题