小编loo*_*oop的帖子

MVC 5项目和Web Api项目之间的区别

我是ASP.NET MVCWeb API的新手,并试图获得基础知识.据我所知,我们在VS 2013项目模板,命名为MVC,Web APIBoth of them together.

我已经完成了教程并了解到我们可以通过单独使用MVC以及使用Web API模板来创建API.

那么,基于架构使用情况,它们之间有什么区别?

c# asp.net asp.net-mvc asp.net-web-api

134
推荐指数
2
解决办法
8万
查看次数

如何将JToken添加到JObject?

我正在尝试使用JSON.Net将JSON对象从某些文本添加到现有的JSON文件中.例如,如果我有如下的JSON数据:

  {
  "food": {
    "fruit": {
      "apple": {
        "colour": "red",
        "size": "small"
      },
      "orange": {
        "colour": "orange",
        "size": "large"
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我一直试图这样做:

var foodJsonObj = JObject.Parse(jsonText);
var bananaJson = JObject.Parse(@"{ ""banana"" : { ""colour"": ""yellow"", ""size"": ""medium""}}");
var bananaToken = bananaJson as JToken;
foodJsonObj["food"]["fruit"]["orange"].AddAfterSelf(bananaToken);
Run Code Online (Sandbox Code Playgroud)

但是这给出了错误: "Newtonsoft.Json.Linq.JProperty cannot have multiple values."

我实际上尝试了几种不同的方法,但似乎无法到达任何地方.在我的例子中,我真正想要做的是将新项添加到"fruit".如果有更好的方法或更简单的库可供使用,请告诉我.

c# json.net

74
推荐指数
3
解决办法
9万
查看次数

建议在Azure中托管WebApi的方法

我想在azure上托管我的WebApi项目.但我不确定我应该用哪种方式在天蓝色上运行它.就像有网站,包含Web角色和工作者角色的云服务一样.然后我应该选择哪一个.如果云服务是选项,那么Web角色和工作者角色中的哪一个是好的?

任何帮助表示赞赏.

c# asp.net cloud azure asp.net-web-api

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

在WebApi中生成重置密码链接

我想生成重置密码链接以发送到用户的电子邮件,该电子邮件将打开ResetPassword页面.在此页面上,我将填写有关新密码的详细信息,然后确认密码.

为此我遵循了这个链接

但是有一个我无法在我的web api项目中找到的Url.Action方法.

var callbackUrl = Url.Action(
               "ConfirmEmail", "Account", 
               new { userId = user.Id, code = code }, 
               protocol: Request.Url.Scheme);
Run Code Online (Sandbox Code Playgroud)

Hase任何人在web api中完成了重置密码部分?我需要一些帮助.

asp.net asp.net-web-api asp.net-web-api2

18
推荐指数
2
解决办法
8156
查看次数

验证单元测试中是否调用了方法

我有一个单元测试我正在检查一个方法是否被调用一次,所以我尝试这样: -

这是我的ILicenseManagerService模拟,我通过construstor传递它的对象.

public Mock<ILicenseManagerService> LicenseManagerService { get { return SetLicenseManagerServiceMock(); } }

    private Mock<ILicenseManagerService> SetLicenseManagerServiceMock()
    {
        var licencemangerservicemock = new Mock<ILicenseManagerService>();
        licencemangerservicemock.Setup(m => m.LoadProductLicenses()).Returns(ListOfProductLicense).Verifiable();

        return licencemangerservicemock;
    }

    public static async Task<IEnumerable<IProductLicense>> ListOfProductLicense()
    {
        var datetimeoffset = new DateTimeOffset(DateTime.Now);

        var lst = new List<IProductLicense>
        {
            GetProductLicense(true, datetimeoffset, false, "1"),
            GetProductLicense(true, datetimeoffset, false, "2"),
            GetProductLicense(true, datetimeoffset, true, "3")
        };

        return lst;
    }
Run Code Online (Sandbox Code Playgroud)

我正在使用这个模拟对象来设置_licenseManagerService并在测试中的方法中调用LoadProductLicenses().像这样.许可证即将到期.

var licenses = (await _licenseManagerService.LoadProductLicenses()).ToList();
Run Code Online (Sandbox Code Playgroud)

我尝试验证对此方法的调用 -

 LicenseManagerService.Verify(m => m.LoadProductLicenses(),Times.Once);
Run Code Online (Sandbox Code Playgroud)

但是,当我运行我的单元测试异常时,说方法根本没有被调用.我在哪里做错了?

编辑 @dacastro我在这里调用相同的模拟是我的单元测试.

[TestMethod]
    [TestCategory("InApp-InAppStore")]
    public async …
Run Code Online (Sandbox Code Playgroud)

c# tdd unit-testing moq

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

Windows 8.1应用程序中的Toast通知

我面临一个奇怪的问题.我使用Windows Phone 8.1 silverlightWindows通用链接进行Toast通知.我能够在Windows Phone应用程序中获取Toast通知,它在链接中提到的Windows 8.1中几乎相同.但是Toast并没有在Windows 8.1中出现.

步骤: -

1 - >我已经从Package.appxmanifest文件中启用了Toast .

2 - >然后我在上面提到的on_launched事件中的App.Xaml.cs中添加了这段代码

它显示了注册成功,如链接中所述

private async void InitNotificationsAsync()
{
      var channel = await PushNotificationChannelManager.CreatePushNotificationChannelForApplicationAsync();
      var hub = new NotificationHub("<hub name>", "<connection string with listen access>");
      var result = await hub.RegisterNativeAsync(channel.Uri);

                // Displays the registration ID so you know it was successful
      if (result.RegistrationId != null)
      {
           var dialog = new MessageDialog("Registration successful: " + result.RegistrationId);
           dialog.Commands.Add(new UICommand("OK"));
       await dialog.ShowAsync();
      } …
Run Code Online (Sandbox Code Playgroud)

c# azure windows-8 windows-phone-8 windows-8.1

6
推荐指数
2
解决办法
2347
查看次数

将元数据添加到xamarin.android中的活动

如何使用Xamarain.Android中的属性将可搜索xml的MetaData添加到Activity.必须添加的元数据: -

<meta-data
    android:name="android.app.searchable"
    android:resource="@xml/searchable">
</meta-data>
Run Code Online (Sandbox Code Playgroud)

在这里,我使用Xamarin.Android中的ActionBar搜索Widget制作一个可搜索的Android Listview.任何帮助表示赞赏.:)

android xamarin

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

在Xamarin.Android中将数据从一个活动传递到另一个活动

我想Class ObjectXamarin.Androidapp 中将一个活动传递给另一个活动.我可以使用Intent.PutExtra方法传递简单的字符串.

有人知道吗.感谢anyhelp :)

c# android xamarin

6
推荐指数
2
解决办法
7091
查看次数

Xamarin示例应用程序出错

我只是尝试运行Xamarin App,这是如何工作的.我从这里下载了应用程序Sample App.我已经成功安装了Xamarin.当我试图运行该应用程序时,它说: -

Error 1 User code size, 430080 bytes, is larger than 65536 and requires aáIndieá(or higher) License. XamarinStore.Droid

Error 2 Using type System.Reflection.Assembly requiresáIndieá(or higher) License. XamarinStore.Droid

任何帮助表示赞赏:)

c# xamarin

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

获取Windows Phone 8.1的当前区域

我刚刚遇到了在Windows Phone 8.1(SilverLight)中获取用户设置区域的问题.

情况: 我已将Region设置为United Kingdom和语言English(United States)(这样做是有效的).

在那种情况下,我仍然UnitedState(US)通过这些方法获得该地区:

  • RegionInfo
  • Thread.CurrentThread
  • System.Globalization

    private static void GetRegion()
    {
        // all of the three returing UnitedStates.
        var dfg = RegionInfo.CurrentRegion;
        var cuture = Thread.CurrentThread.CurrentCulture;
        var cul = CultureInfo.CurrentCulture;
    }
    
    Run Code Online (Sandbox Code Playgroud)

为什么这些不归属United Kingdom于某个地区?

.net c# windows-phone-8 windows-phone-8.1

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