小编Leo*_*ens的帖子

F# - 乘以float乘以int

可能是一个愚蠢的问题,但我刚开始使用F#而且我遇到了一些问题.

说我有这样的功能:

let multiplyByTwo x = x * 2
Run Code Online (Sandbox Code Playgroud)

当我这样称呼时:

let result = multiplyByTwo 5
Run Code Online (Sandbox Code Playgroud)

一切都好,结果是10.

当我这样称呼时:

let result = multiplyByTwo 2.5
Run Code Online (Sandbox Code Playgroud)

我希望得到5或5.0.但实际结果如下:

let result = multiplyByTwo 2.5 ;;
--------------------------------- ^^^

stdin(4,28):错误FS0001:此表达式应该具有类型

int     
Run Code Online (Sandbox Code Playgroud)

但这里有类型

float
Run Code Online (Sandbox Code Playgroud)

因为我希望这个函数有点通用(即接受浮点数和整数),我不喜欢这个.我的问题当然是:如何解决这个问题?

f# functional-programming

7
推荐指数
2
解决办法
2782
查看次数

应用程序恢复导致FormsAppCompatActivity崩溃

我有一个Xamarin Forms应用程序,目前正在为Android构建.我有一个MainActivity用于扩展的东西FormsApplicationActivity,但因为我想使用自定义主题我必须将其更改为扩展FormsAppCompatActivity(请参阅我的另一个问题:Xamarin Forms自定义主题不起作用).

每当我切换到应用程序然后回到应用程序时,从更改FormsApplicationActivity到FormsAppCompatActivity应用程序崩溃.它App.xaml.cs在OnResume方法中的类中抛出一个错误,我尝试将MainPage设置为一个新的导航页面:

protected override void OnResume()
{
    bool isRegistered = _authenticationService.IsRegistered();

    MainPage = isRegistered 
        ? new NavigationPage(new LoginPage()) 
        : new NavigationPage(new RegisterPage()); // this results in the crash
}
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

Java.Lang.IllegalStateException:无法在onSaveInstanceState之后执行此操作

这是堆栈跟踪:

03-09 13:43:52.098 I/MonoDroid( 1243): Java.Lang.IllegalStateException: Can not perform this action after onSaveInstanceState
03-09 13:43:52.098 I/MonoDroid( 1243):   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in /Users/builder/data/lanes/2098/3efa14c4/source/mono/external/referencesource/mscorlib/system/runtime/exceptionservices/exceptionservicescommon.cs:143 
03-09 13:43:52.098 I/MonoDroid( 1243):   at Android.Runtime.JNIEnv.CallIntMethod (IntPtr jobject, …
Run Code Online (Sandbox Code Playgroud)

android android-lifecycle xamarin xamarin.forms xamarin-forms

6
推荐指数
1
解决办法
1647
查看次数

使用BouncyCastle生成HMAC-SHA256哈希

我需要在PCL(为Xamarin Forms开发)中生成HMAC-SHA256哈希,它不支持.NET内置的HMAC /加密类,所以我正在使用BouncyCastle来实现我的加密类.

我需要生成HMAC-SHA256哈希,但我无法在Google上找到任何示例,BouncyCastle似乎也没有任何相关文档.谁能帮我吗?

.net c# bouncycastle sha256 hmac

6
推荐指数
1
解决办法
5773
查看次数

如何使用Azure DevOps部署多个应用程序?

我有一个包含多个项目的.NET解决方案。我想在Azure DevOps中设置部署管道,但是我不确定如何执行此操作。我想拥有1个部署以下项目的管道:

  • 主Web应用程序->需要转到Azure Web Apps
  • 门户网站Web应用程序->还需要转到Azure Web Apps
  • 数据库->需要部署到SQL Azure数据库

我该如何设置?我选择了默认的“ Azure App Service部署”模板,但是在部署任务中,我无法选择要部署的项目。程序包参考$(build.artifactstagingdirectory)/**/*.zip,但这是一个zip文件,其中包含我的两个Web项目的工件(此处缺少数据库DACPAC)。

asp.net deployment continuous-integration azure azure-devops

6
推荐指数
1
解决办法
796
查看次数

MVVMLight - 如何在View中获取对ViewModel的引用?

我正在构建一个Windows Phone 7应用程序,我需要在我的视图中引用我的ViewModel,以便我可以从我的事件处理程序设置属性.唯一的问题是我无法获得该引用.

我做了什么;

我有一个ViewModelLocator(删除了无关的位):

static ViewModelLocator()
{
    ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);

    SimpleIoc.Default.Register<TunerViewModel>();
}

[SuppressMessage("Microsoft.Performance", "CA1822:MarkMembersAsStatic", Justification = "This non-static member is needed for data binding purposes.")]
public TunerViewModel Tuner
{
    get { return ServiceLocator.Current.GetInstance<TunerViewModel>(); }
}
Run Code Online (Sandbox Code Playgroud)

和视图(XAML):

DataContext="{Binding Tuner, Source={StaticResource Locator}}">
Run Code Online (Sandbox Code Playgroud)

和视图的代码隐藏:

public partial class Tuner : PhoneApplicationPage
{
    private readonly TunerViewModel _viewModel;

    public Tuner()
    {
        _viewModel = DataContext as TunerViewModel;

        InitializeComponent();
    }
Run Code Online (Sandbox Code Playgroud)

我发现这个链接MVVM View对ViewModel的引用,其中DataContext被转换为ViewModel,所以我尝试了同样的,因为它看起来是一个很好的解决方案.但是,我的_viewModel字段在强制转换后为null.为什么这样,我该如何解决这个问题?我无法在Google/Stackoverflow上找到它

提前致谢 :)

silverlight mvvm windows-phone-7 mvvm-light

5
推荐指数
1
解决办法
6741
查看次数

如何在Windows Phone上运行并行任务?

我正在构建一个WP8应用程序,我需要执行大约30个Web请求.这些请求不依赖于彼此,因此可以并行化.

我的代码看起来像这样(简化/伪代码):

foreach (Uri uri in uris)
{
    var rawData = await Task.Run(() => httpClient.GetStringAsync(uri).ConfigureAwait(false));

    var processedData = dataProcessor.Process(rawData);
    processedDataCollection.Add(processedData);
}
Run Code Online (Sandbox Code Playgroud)

当我看到提琴手时,请求全部都是连续的; 它需要几秒钟来执行和处理所有这些.但是,我不希望代码等到1个请求完成后才转移到下一个请求,我想同时执行多个请求.

通常我会使用Parallel.Invoke()或Parallel.ForEach()类似的东西来做到这一点,但显然并行库在Windows Phone 8中不可用.

那么实现这一目标的最佳方法是什么?Task.Factory.StartNew()?new Thread()?

c# parallel-processing multithreading asynchronous windows-phone-8

5
推荐指数
1
解决办法
2505
查看次数

Razor为HTML添加新属性

我想动态地为我的HTML添加一个新属性,但我无法弄清楚如何做到这一点;

我有一些像按钮代码的Facebook,如果指定了模型中的Url属性,我想在其中添加"data-url"属性.

我尝试过几件事,但这就是我现在的代码:

<a href="https://twitter.com/share" class="twitter-share-button" @if (!string.IsNullOrEmpty(Model.Url)) { data-url="@Model.Url" } data-text="@Model.TweetText" data-count="vertical" data-via="avalaxy">Tweet</a><script type="text/javascript" src="//platform.twitter.com/widgets.js"></script>
Run Code Online (Sandbox Code Playgroud)

这不起作用.那我该怎么做?

asp.net razor asp.net-mvc-3

4
推荐指数
1
解决办法
2386
查看次数

找不到类型'System.Data.Entity.Infrastructure.SqlConnectionFactory'的构造函数

昨天我将我的电脑从Windows 7"升级"到Windows 8,所以现在我正在使用Visual Studio 2012,并打开我的Visual Studio 2010项目.

这个项目总是工作正常,但它在Visual Studio 2012中不起作用.我有一些奇怪的错误,但我修复了这些.现在我留下了一个我无法修复但在Google上找不到的错误:

我得到这个例外:

无法将Database.DefaultConnectionFactory设置为应用程序配置中指定的'System.Data.Entity.Infrastructure.SqlConnectionFactory,EntityFramework'类型的实例.请参阅内部异常了解详细信

具有以下不足之处:

找不到类型'System.Data.Entity.Infrastructure.SqlConnectionFactory'的构造函数.

我的Web.Config看起来非常标准:

  <connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=aspnet-WebUI-201253192737;Integrated Security=True" providerName="System.Data.SqlClient" />
  </connectionStrings>

  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework">
      <parameters>
        <parameter value="Data Source=.\SQLEXPRESS; Integrated Security=True; MultipleActiveResultSets=True" />
      </parameters>
    </defaultConnectionFactory>
  </entityFramework>
Run Code Online (Sandbox Code Playgroud)

SqlConnectionFactory类存在,它有2个构造函数(一个无参数,一个接受连接字符串).我通过在C#代码中创建一个SqlConnectionFactory来测试它.

我已经删除了Entity Framework并重新安装了它,但这并没有解决问题.

我正在使用实体框架5.0 RC(在VS2010中如前所述)在SQL Server 2012 + Tools和IIS express中使用.

asp.net-mvc entity-framework windows-8 entity-framework-5 visual-studio-2012

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

如何从控制器方法返回多个图像?

我有一个 ASP.NET MVC 控制器,可以生成图像(它们存储在内存中,我不想将它们存储在硬盘驱动器上),并且应该将它们返回到我的视图中。

问题是:我不知道如何从一个控制器方法返回多个图像(我想在 1 个视图中显示图像)。我知道我可以使用例如返回单个图像FileResult,但我无法找到(不在google/stackoverflow上)如何从同一方法返回多个图像。将方法拆分为多个方法是不可能的。哦,所有图像都转换为byte[],但如果需要的话可以反转。

c# asp.net-mvc image-processing

4
推荐指数
1
解决办法
4034
查看次数

更改映射时TFS删除了我的文件

这里有很多代码我有一个很大的解决方案.由于TFS的一些问题,我想创建一个新的"干净"存储库.我删除了到旧存储库的映射,并尝试创建新映射.这导致了一个错误,即已经有一个映射到我的解决方案.我去了Source Control Explorer- > Workspaces并删除了映射到我的解决方案.之后,我能够将我的新存储库映射到我的解决方案.

但当我检查我的硬盘时,我几乎心脏病发作:TFS删除了我的所有代码文件!目录和依赖关系仍然存在,但我的所有项目文件,我的解决方案文件和所有代码都消失了!

请StackOverflow,帮帮我吧!这是很多工作现在已经消失,我真的非常迫切需要它:(

编辑:我目前正在尝试使用几个文件恢复工具(如Recuva)恢复我的文件,但没有一个可以找到任何已删除的更改.但是这些文件真的不见了,Windows搜索找不到它们,也没有隐藏它们.谁能告诉我为什么会这样?这些文件仍然在我的SSD上吗?

version-control tfs visual-studio-2012

4
推荐指数
2
解决办法
2852
查看次数