コード例 #1
0
ファイル: LoDash.cs プロジェクト: 925coder/ravendb
 public void Manual()
 {
     var doc = RavenJObject.FromObject(new Product
     {
         Tags = new string[0],
     });
     var resultJson = new ScriptedJsonPatcher().Apply(doc, new ScriptedPatchRequest
     {
         Script = "this.Tags2 = this.Tags.Map(function(value) { return value; });",
     });
     Assert.Equal(0, resultJson.Value<RavenJArray>("Tags2").Length);
 }
コード例 #2
0
ファイル: AdvancedPatching.cs プロジェクト: robashton/ravendb
		public void CanPatchUsingVars()
		{
			var doc = RavenJObject.FromObject(test);
			var resultJson = new ScriptedJsonPatcher().Apply(doc, new ScriptedPatchRequest
			{
				Script = "this.TheName = Name",
				Values = { { "Name", "ayende" } }
			});
			Assert.Equal("ayende", resultJson.Value<string>("TheName"));
		}
コード例 #3
0
ファイル: AdvancedPatching.cs プロジェクト: robashton/ravendb
		public void CanUseLoDash()
		{
			const string email = "*****@*****.**";
			var doc = RavenJObject.Parse("{\"Contact\":null}");
			const string script = "this.Emails = _(3).times(function(i) { return contact.Email + i; });";
			var patch = new ScriptedPatchRequest()
			{
				Script = script,
				Values = { { "contact", new { Email = email } } }
			};
			var result = new ScriptedJsonPatcher().Apply(doc, patch);
			Assert.Equal(new [] { "[email protected]", "[email protected]", "[email protected]" }, result.Value<RavenJArray>("Emails").Select(x => x.Value<string>()));
		}