首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从vb.net将MOQ设置代码转换为c#

从vb.net将MOQ设置代码转换为c#
EN

Stack Overflow用户
提问于 2012-03-16 05:00:59
回答 2查看 1.4K关注 0票数 1

我在c#中有一个表达式og (lambda/linq)。当试图在vb.net中使用这段代码时,我会得到一个错误

C#代码

代码语言:javascript
复制
_dataLayerMock.Setup(x => x.SaveAccount(It.Is<Account>(a => a.AccountType == AccountType.Private)));  

转换的VB.net代码

代码语言:javascript
复制
_dataLayerMock.Setup(Function(x) x.SaveAccount(It.[Is](Of Account)(Function(a) a.AccountType = AccountType.[Private])))

误差

代码语言:javascript
复制
Error   1   Overload resolution failed because no accessible 'Setup' can be called with these arguments:
    'Public Function Setup(Of TResult)(expression As System.Linq.Expressions.Expression(Of System.Func(Of ConsoleApplication1.IDataLayer, TResult))) As Moq.Language.Flow.ISetup(Of ConsoleApplication1.IDataLayer, TResult)': Expression does not produce a value.
    'Public Function Setup(Of TResult)(expression As System.Linq.Expressions.Expression(Of System.Func(Of ConsoleApplication1.IDataLayer, TResult))) As Moq.Language.Flow.ISetup(Of ConsoleApplication1.IDataLayer, TResult)': Data type(s) of the type parameter(s) cannot be inferred from these arguments. Specifying the data type(s) explicitly might correct this error.
    'Public Function Setup(expression As System.Linq.Expressions.Expression(Of System.Action(Of ConsoleApplication1.IDataLayer))) As Moq.Language.Flow.ISetup(Of ConsoleApplication1.IDataLayer)': Expression does not produce a value. D:\Araamudhan\Project\Amex\Maven-NPanday\Application\ClassLibrary\LinqTest\LinqTest\BusinessLayerTest.vb    20  9   LinqTest

有人能帮我解决这个问题吗?

EN

回答 2

Stack Overflow用户

发布于 2012-03-16 05:11:37

使用代码转换器之一--它们对这些实例非常有用。http://converter.telerik.com/

代码语言:javascript
复制
_dataLayerMock.Setup(Function(x) x.SaveAccount(It.[Is](Function(a) a.AccountType = AccountType.[Private])))

HTH

票数 2
EN

Stack Overflow用户

发布于 2012-11-13 15:43:03

你可能不再需要这个答案了,但万一其他人遇到这个问题。

我认为这在VB.net中行不通,因为lambda必须在vb中返回一个值,因此不允许您在VB中模拟子方法。

希望这能有所帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9732155

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档