我正在尝试将Html Agility Pack与MonoTouch应用程序一起使用,但找不到适合它的版本。
我从CodePlex下载了最新的二进制文件,我尝试使用它包含的每个DLL进行构建。当目标是iPhone时,无编译。
添加.NET 20库将允许它编译到iPhone模拟器,但是当切换到iPhone时,我收到错误:
Error MT2002: Can not resolve reference: System.Diagnostics.TraceListener (MT2002) (MFLPlatinum12)
似乎其他人正在使用HtmlAgilityPack和MonoTouch项目,所以对我缺少的东西有任何想法?
答案 0 :(得分:2)
您是从源代码编译还是直接使用DLL?
您需要制作一个新的MonoTouch库项目并添加所有文件才能工作。
直接使用DLL可能不起作用,因为它没有为MonoTouch编译。
答案 1 :(得分:1)
你必须从代码中编译它 下载源
进入
\htmlagilitypack-99964\Branches\1.4.0\HtmlAgilityPack
修改csproj
更改为
<Import Project="$(MSBuildExtensionsPath)\Novell\Novell.MonoDroid.CSharp.targets" />
保存并加载
修复错误
追踪 - &gt;调试
删除块
if (!SecurityManager.IsGranted(new DnsPermission(PermissionState.Unrestricted)))
{
//do something.... not at full trust
try
{
RegistryKey reg = Registry.ClassesRoot;
reg = reg.OpenSubKey(extension, false);
if (reg != null) contentType = (string)reg.GetValue("", def);
}
catch (Exception)
{
contentType = def;
}
}
删除块
if (SecurityManager.IsGranted(new RegistryPermission(PermissionState.Unrestricted)))
{
try
{
RegistryKey reg = Registry.ClassesRoot;
reg = reg.OpenSubKey(@"MIME\Database\Content Type\" + contentType, false);
if (reg != null) ext = (string)reg.GetValue("Extension", def);
}
catch (Exception)
{
ext = def;
}
}
使用dll
文件夹
bin/debug