ISOle.MimeMap类没有构造函数

时间:2011-10-12 13:17:46

标签: c#

我尝试使用IISOle中的MimeMapClass

我收到以下错误

The type 'IISOle.MimeMapClass' has no constructors defined  

当我尝试实例化对象时会发生这种情况

vRoot.Properties["MimeMap"].Add(new MimeMapClass { Extension = ext, MimeType = mime });

我收到其他错误:

Interop type 'IISOle.MimeMapClass' cannot be embedded. Use the applicable interface instead.

'IISOle.MimeMapClass' does not contain a definition for 'Extension'

我不知道为什么会这样。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

我不确定这是否是您的问题,因为我不知道您是否使用VS2010。但如果您是,请尝试不嵌入互操作类型(请参阅您添加的参考的属性)。根据这个article,它会引起你这些类型的麻烦

答案 1 :(得分:0)

您是否尝试过以下操作? (不是生产代码 - 没有错误处理,处理或检查提供的现有项目。)

DirectoryEntry mimeMap = new DirectoryEntry("IIS://localhost/MimeMap")

PropertyValueCollection collection = mimeMap.Properties["MimeMap"];

MimeMapClass newMimeType = new MimeMapClass();
newMimeType.Extension = ext;
newMimeType.MimeType = mime;
collection.Add(newMimeType);
mimeMap.CommitChanges();
相关问题