Я пытаюсь реализовать на очень большой и вздутой системе рамки для использования модульного тестирования, основная проблема заключается в том, что 70% системы реализовано статическими методами. Как я добрался до Молеса, и я очень уверен, что достигню своей цели (я совсем рядом).Статический метод Molling с общим типом возврата <T>
У меня проблема сейчас в том, что я пытаюсь Моль статический метод с параметром Generic:
public static T ExecScalar<T>(IDbConnection cx, string commandText, IDbTransaction tx, IEnumerable<IDbDataParameter> parameters)
погуглить в Интернете я нашел этот форум сообщение:
http://social.msdn.microsoft.com/Forums/uk/pex/thread/3faadca2-a26f-449c-942e-d800a6079e02
, что это именно моя проблема, и предлагается прочитать инструкцию на странице 10.
Я прочитал инструкцию на странице 1 0, но речь идет о ступлении, а не обмороке. Я попытался применить описанное решение, но если я ставлю:
Ktcar.Cs.Dal.DB.Moles.MDALDB.ExecScalarIDbConnectionStringIDbTransactionIEnumerableOfIDbDataParameter<int> = delegate(IDbConnection conn, String command, IDbTransaction trx, IEnumerable<IDbDataParameter> parameters)
я получаю:
„Только назначение, вызова, увеличение, уменьшение, и новые выражения объекта может быть использован в качестве заявления“
Я также попытался:
Ktcar.Cs.Dal.DB.Moles.MDALDB.ExecScalarIDbConnectionStringIDbTransactionIEnumerableOfIDbDataParameter<T> = delegate(IDbConnection conn, String command, IDbTransaction trx, IEnumerable<IDbDataParameter> parameters)
И я получаю ту же ошибку
Или:
Ktcar.Cs.Dal.DB.Moles.MDALDB.ExecScalarIDbConnectionStringIDbTransactionIEnumerableOfIDbDataParameter = null;
А потом я получаю:
«Невозможно присвоить„ExecScalarIDbConnectionStringIDbTransactionIEnumerableOfIDbDataParameter“, потому что это" групповой метод»
пожалуйста, может кто-нибудь HelpMe о том, как издеваются статический метод с выходом Generic Type?
Ваш образец, кажется, немного не хватает ... ты не должен иметь что-то вроде: Ktcar.Cs.Dal.DB.Moles.MDALDB.ExecScalarIDbConnectionStringIDbTransactionIEnumerableOfIDbDataParameter = (IDbConnection conn, String, IDbTransaction trx, параметры IEnumerable ) => {int x = 0;/* присваивать значение x */return x; }; –
Я изменил присвоение делегата на null, чтобы упростить, если я напишу ваше предложение, я получаю ту же ошибку. Компилятор не любит после названия метода литья. –
Qsebas