标签: portable-class-library

C#编译器如何决定发出可重定向的程序集引用?

.NET Compact Framework引入了可重定向的程序集引用,现在用于支持可移植类库.

基本上,编译器会发出以下MSIL:

.assembly extern retargetable mscorlib
{
    .publickeytoken = (7C EC 85 D7 BE A7 79 8E )                         
    .ver 2:0:5:0
}
Run Code Online (Sandbox Code Playgroud)

C#编译器如何理解它必须发出一个可重定向的引用,以及如何强制C#编译器甚至在可移植类库之外发出这样的引用?

c# compiler-construction portable-class-library

12
推荐指数
1
解决办法
1080
查看次数

C#可移植类库 - 如何包含System.Data.Linq

是否可以在可移植类库项目中引用System.Data.Linq?

注意: 我只是想在WP8和WinStore8应用程序之间共享代码[DataContext]

c# windows-phone portable-class-library

12
推荐指数
1
解决办法
5034
查看次数

为什么String类没有在可移植库中实现IEnumerable <char>?

我创建了一个针对.NET Framework 4和Silverlight 5的PCL项目(​​我使用Visual Studio 2010的扩展,而不是Visual Studio 2012的可移植项目模板,如果这很重要).我试图使用System.Linq.Enumerable.Reverse<TSource>()扩展方法反转字符串,但它不起作用,因为编译器认为System.String没有实现IEnumerable<char>.

.net portable-class-library

11
推荐指数
1
解决办法
978
查看次数

便携式类库和反射

我正在为桌面,Windows 8商店和Windows手机同时构建新的应用程序.所以我创建了可移植类库,以便在所有平台上具有通用功能.我的问题是,当我尝试在PCL中重用我的代码时,我无法访问库中的一些方法和属性.根据MSDN,支持这些方法,但我现在知道为什么我无法访问它们.

        var property = memberExpression.Member as PropertyInfo;
        if (property == null)
        {
        }

        var getMethod = property.GetGetMethod(true);
        if (getMethod.IsStatic)
        {}
Run Code Online (Sandbox Code Playgroud)

这是无法编译的代码片段.GetGetMethod和IsStatic在Visual Studio编辑器中是红色的.我不知道为什么会发生这种情况以及如何访问这些属性.

所以,如果那里的任何人做过类似的事情,请帮我编译这段代码.

c# reflection portable-class-library

11
推荐指数
1
解决办法
1万
查看次数

便携式类库不支持System.IO,为什么?

我创建了一个在我的Monodroid项目中使用的可移植类库.但问题是我需要System.IO库但不幸的是我无法添加它.

我甚至尝试通过"添加引用"选项添加它,但它是徒劳的.

为什么会这样?我该怎么办?

.net c# xamarin.android portable-class-library

11
推荐指数
1
解决办法
5084
查看次数

C#Portable Class Library等效于System.Diagnostics.StackTrace

我正在处理的程序有一个适当命名为"Error"的日志记录功能,用于通知错误而不会导致程序崩溃,但是,我想包含一个堆栈跟踪,以便更容易调试这些非致命错误.我的第一直觉是使用System.Diagnostics.StackTrace,遗憾的是PCL没有.

然后,我试图抛出并立即捕获异常.

try { throw new Exception(); } 
catch (Exception ex) { return ex.StackTrace; }
Run Code Online (Sandbox Code Playgroud)

不幸的是,这只提供了调用堆栈的顶层:因为它没有解开堆栈,所以它不提供任何有用的信息.所以,我的问题是:如何在ac#PCL函数中获得堆栈跟踪而不会抛出错误并将其捕获到堆栈的底部?我更愿意将代码完全保留在PCL中,并避免使用抽象和平台特定的实现代码来实现这么简单的事情.

编辑为对注释的响应:`throw new Exception(ex)仅向堆栈跟踪添加另一个层,因此它在堆栈跟踪功能中有两行但仍无法检索完整跟踪.

c# debugging portable-class-library

11
推荐指数
1
解决办法
1796
查看次数

如何实现SharpZipLib.Portable所需的VirtualFileSystem?

我想将SharpZipLib.Portable库添加到我的Xamarin.FormsPCL项目中.我的目标是Android和iOS.该文档提到您必须实现一个VirtualFileSystem才能使用该库,但我不知道该怎么做,我无法找到有关该主题的更多信息.

有没有人使用这个库可以指导我使用它所需的步骤?

c# sharpziplib portable-class-library xamarin.forms

11
推荐指数
1
解决办法
2928
查看次数

加载程序集Xamarin.Android.Support.v4时出现异常

我正在使用Xamarin.Forms在visual studio上工作,我得到以下错误:

加载程序集时出现异常:System.IO.FileNotFoundException:无法加载程序集'Xamarin.Android.Support.v4,Version = 1.0.0.0,Culture = neutral,PublicKeyToken ='.也许它在Mono for Android配置文件中不存在?文件名:Xamarin.Android.Tuner.DirectoryAssemblyResolver.Resolve(AssemblyNameReference reference,ReaderParameters参数)的Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(ICollection`1程序集,AssemblyDefinition程序集,布局topLevel)在Xamarin.Android.Tasks.ResolveAssemblies.Execute()SportBook.Droid

我该怎么办?

c# visual-studio portable-class-library xamarin xamarin.forms

11
推荐指数
1
解决办法
2万
查看次数

HttpClient在上传之前读取整个文件.UWP

我正在制作一个UWP应用程序,将文件上传到Facebook,我使用自定义HttpContent上传4k块文件,以最大限度地减少大文件的内存使用量(> 100mb)并报告进度.

我的自定义HttpContent UploadWithProgressHttpContent:

 class UploadWithProgressHttpContent : HttpContent
{
    private readonly IProgress<OperationProgress> _progress;
    private readonly OperationProgress _data;
    private readonly Stream _file;
    private readonly int _bufferSize;
    private readonly CancellationToken _token;

    public UploadWithProgressHttpContent(
        IProgress<OperationProgress> progress,
    OperationProgress data,
    Stream file,
    int bufferSize,
    CancellationToken token)
{
    _progress = progress;
    _data = data;
    _file = file;
    _bufferSize = bufferSize;
    _token = token;
}



protected override Task SerializeToStreamAsync(Stream stream, TransportContext context)
{
    return CopyStreamWithProgress(_file, stream, _progress, _token, _data, _bufferSize);
}

public static async Task<Stream> CopyStreamWithProgress(
    Stream …
Run Code Online (Sandbox Code Playgroud)

c# httpclient portable-class-library dotnet-httpclient uwp

11
推荐指数
1
解决办法
594
查看次数

内容不可见时隐藏列或行

所以我有一个带有列的xaml Grid,当内容不可见时我想隐藏或折叠列.

示例:我有这样的布局:

<Grid >      
    <Button Grid.Column="0" x:Name="FirstButton"  Text="First button" />      
    <Button Grid.Column="1"x:Name="SecondButton"  Text="Second button" />
</Grid>
Run Code Online (Sandbox Code Playgroud)

当FirstButton不可见时,我想要这个结果

  <Grid >      
    <Button Grid.Column="1"x:Name="SecondButton"  Text="Second button" />
</Grid>
Run Code Online (Sandbox Code Playgroud)

xaml collapse portable-class-library xamarin xamarin.forms

11
推荐指数
1
解决办法
3049
查看次数