【发布时间】:2014-11-03 20:56:30
【问题描述】:
我有一个listAdoParams,它是一个List<AdoNetAppenderParameter>。
AdoNetAppenderParameter 是 log4net 库中的一个类型。
namespace log4net.Appender
{
public class AdoNetAppenderParameter
{
public AdoNetAppenderParameter();
public DbType DbType { get; set; }
public IRawLayout Layout { get; set; }
public string ParameterName { get; set; }
public byte Precision { get; set; }
public byte Scale { get; set; }
public int Size { get; set; }
public virtual void FormatValue(IDbCommand command, LoggingEvent loggingEvent);
public virtual void Prepare(IDbCommand command);
}
}
我想将此listAdoParams 转换为IEnumerable<IDataParameter>。
namespace System.Data
{
public interface IDataParameter
{
DbType DbType { get; set; }
ParameterDirection Direction { get; set; }
bool IsNullable { get; }
string ParameterName { get; set; }
string SourceColumn { get; set; }
DataRowVersion SourceVersion { get; set; }
object Value { get; set; }
}
}
我应该如何进行这种转换?
【问题讨论】:
-
“应用程序不直接创建 IDataParameter 接口的实例,而是创建继承 IDataParameter 的类的实例。” ... 你需要一个继承自 IDataParameter 的类来转换 log4net 类型。
标签: c# linq c#-4.0 type-conversion ienumerable