次のC#コードをVB.NETに変換しようとしています。問題はラムダ式にあります。C#ラムダをVB.NETに変換する
public class UserStore
{
private readonly IDatabaseFactory _databaseFactory;
private DataContext _db;
protected DataContext Db => _db ?? (_db = _databaseFactory.GetDataContext());
public UserStore(IDatabaseFactory databaseFactory)
{
_databaseFactory = databaseFactory;
}
}
次私は、コードを変換したものである:誰もが私がやっているものを私に伝えることができますいくつかの理由で
Public Class UserStore
Private ReadOnly _databaseFactory As IDatabaseFactory
Private _db As DataContext
Protected Db As DataContext = Function() As DataContext
If _db Is Nothing Then
_db = _databaseFactory.GetDataContext()
End If
Return _db
End Function
Public Sub New(databaseFactory As IDatabaseFactory)
_databaseFactory = databaseFactory
End Sub
End Class
、変換されたラムダがエラーにLambda expression cannot be converted to 'DataContext' because 'DataContext' is not a delegate type.
を与えますここで間違っている?
を書くだけの短い方法です。それは表現体のプロパティです。 – PetSerAl