【问题标题】:Error CS7069: Reference to type System.IO.FileInfo'错误 CS7069:引用类型 System.IO.FileInfo'
【发布时间】:2018-01-05 21:01:18
【问题描述】:

我正在构建一个可移植库,但是,我收到了这个错误:

/Users/samir/Documents/projects/xamarin/Phoenix.Client.Portable/Socket.cs(15,15): 错误 CS7069:引用类型 System.IO.FileInfo' claims it is defined assemblymscorlib,版本 = 4.0.0.0,文化 = 中性, PublicKeyToken=b77a5c561934e089',但是找不到(CS7069) (Phoenix.Client.Portable)

在:

var dataString = data.ToString(Formatting.None);
Action callback = () =>
{
   //THIS WILL CAUSE THE ERROR ABOVE
   _conn.Send(dataString);
};

有什么想法吗?

【问题讨论】:

    标签: xamarin


    【解决方案1】:

    您是否引用了 PCL 中的任何其他库?如果是这样并且如果它们是使用不同版本的 .NET 框架构建的,则可能会导致此错误。

    当有人尝试在他们的 PCL 项目中使用 websocket-sharp 库时,看到类似的问题: https://github.com/sta/websocket-sharp/issues/100

    从上面: “那个 websocket-sharp 库是用 .NET Framework 3.5 作为目标框架构建的。如果 Portable Class Library 只支持 .NET Framework 4.0 或更高版本,我猜你不能在 Portable Class Library 项目中使用它。”

    【讨论】:

    • 谢谢,我已经修复了它,我已经重新编译了库,删除了与 PCL 签名不兼容的方法,你发现我不需要 :)
    【解决方案2】:

    还有另一个 monodevelop 错误会导致在没有 <TargetFrameworkVersion> 的情况下创建 .csproj 文件或以某种方式丢失它。
    如果您从项目属性窗口更改框架版本,它不会重新添加。您必须手动添加一个。
    示例:

    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>  
    
    <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
    
    <TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
    
    <TargetFrameworkVersion>v4.7</TargetFrameworkVersion>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多