使用HtmlAgilityPack与MonoTouch的应用程序,让参考错误(Using HtmlA

2019-07-31 02:23发布

我想使用HTML敏捷性包用MonoTouch的应用程序,但无法找到一个版本,将使用它。

我从网上下载最新的二进制文件CodePlex上 ,我已经试过建筑,它包含了每一个DLL。 当目标是iPhone都不会编译。

添加.NET 20库将允许它编译成iPhone模拟器,但切换到iPhone时,我得到的错误:

Error MT2002: Can not resolve reference: System.Diagnostics.TraceListener (MT2002) (MFLPlatinum12)

好像别人都在用HtmlAgilityPack与MonoTouch的项目,所以任何想法,以我缺少的是什么?

Answer 1:

你是从源代码编译或直接使用DLL?

你将需要一个新的MonoTouch的库项目,并添加的所有文件为它工作。

使用DLL直接可能不会正常工作,因为它不是为MonoTouch的编译。



Answer 2:

你必须从代码编译下载源代码

进入

\htmlagilitypack-99964\Branches\1.4.0\HtmlAgilityPack

编辑csproj变化

<Import Project="$(MSBuildExtensionsPath)\Novell\Novell.MonoDroid.CSharp.targets" />

保存和加载

修正错误

跟踪 - >调试

删除块

 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;
            }
        }

使用dllbin/debug文件夹



文章来源: Using HtmlAgilityPack with MonoTouch app gives reference error