mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2026-02-09 09:16:41 +08:00
Merge branch 'dev' into feature/widget-elements
This commit is contained in:
+6
-5
@@ -27,6 +27,7 @@
|
||||
|
||||
<BuildPlatform Condition="$(ProgramW6432) != ''">x64</BuildPlatform>
|
||||
<BuildPlatform Condition="$(BuildPlatform) == ''">x86</BuildPlatform>
|
||||
<Configuration Condition="$(Configuration) == ''">Release</Configuration>
|
||||
|
||||
<!-- TeamCity build number -->
|
||||
<Version>$(BUILD_NUMBER)</Version>
|
||||
@@ -115,7 +116,7 @@
|
||||
<MSBuild
|
||||
Projects="$(SrcFolder)\Orchard.sln"
|
||||
Targets="Build"
|
||||
Properties="Configuration=Release;OutputPath=$(CompileFolder)" />
|
||||
Properties="Configuration=$(Configuration);OutputPath=$(CompileFolder)" />
|
||||
<!-- Compile to "regular" output folder for devs using VS locally -->
|
||||
<MSBuild
|
||||
Projects="$(SrcFolder)\Orchard.sln"
|
||||
@@ -126,7 +127,7 @@
|
||||
<MSBuild
|
||||
Projects="$(SrcFolder)\Tools\MSBuild.Orchard.Tasks\MSBuild.Orchard.Tasks.csproj"
|
||||
Targets="Build"
|
||||
Properties="Configuration=Release;OutputPath=$(MsBuildTasksFolder)" />
|
||||
Properties="Configuration=$(Configuration);OutputPath=$(MsBuildTasksFolder)" />
|
||||
</Target>
|
||||
|
||||
<Target Name="TypeScript" DependsOnTargets="CompileMsBuildTasks">
|
||||
@@ -273,19 +274,19 @@
|
||||
<!-- extra processing of the staged config files -->
|
||||
<TransformXml
|
||||
Source="$(StageFolder)\Web.Config"
|
||||
Transform="$(SrcFolder)\Orchard.Web\Web.Release.Config"
|
||||
Transform="$(SrcFolder)\Orchard.Web\Web.$(Configuration).Config"
|
||||
Destination="$(StageFolder)\Web.Config"
|
||||
/>
|
||||
|
||||
<TransformXml
|
||||
Source="$(StageFolder)\Config\HostComponents.Config"
|
||||
Transform="$(SrcFolder)\Orchard.Web\Config\HostComponents.Release.Config"
|
||||
Transform="$(SrcFolder)\Orchard.Web\Config\HostComponents.$(Configuration).Config"
|
||||
Destination="$(StageFolder)\Config\HostComponents.Config"
|
||||
/>
|
||||
|
||||
<TransformXml
|
||||
Source="$(StageFolder)\Config\log4net.Config"
|
||||
Transform="$(SrcFolder)\Orchard.Web\Config\log4net.Release.Config"
|
||||
Transform="$(SrcFolder)\Orchard.Web\Config\log4net.$(Configuration).Config"
|
||||
Destination="$(StageFolder)\Config\log4net.Config"
|
||||
/>
|
||||
|
||||
|
||||
Binary file not shown.
@@ -403,17 +403,17 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonWriter.WriteStartObject">
|
||||
<summary>
|
||||
Writes the beginning of a Json object.
|
||||
Writes the beginning of a JSON object.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonWriter.WriteEndObject">
|
||||
<summary>
|
||||
Writes the end of a Json object.
|
||||
Writes the end of a JSON object.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonWriter.WriteStartArray">
|
||||
<summary>
|
||||
Writes the beginning of a Json array.
|
||||
Writes the beginning of a JSON array.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonWriter.WriteEndArray">
|
||||
@@ -447,7 +447,7 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonWriter.WriteEnd">
|
||||
<summary>
|
||||
Writes the end of the current Json object or array.
|
||||
Writes the end of the current JSON object or array.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonWriter.WriteToken(Newtonsoft.Json.JsonReader)">
|
||||
@@ -882,17 +882,17 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Bson.BsonWriter.WriteStartArray">
|
||||
<summary>
|
||||
Writes the beginning of a Json array.
|
||||
Writes the beginning of a JSON array.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Bson.BsonWriter.WriteStartObject">
|
||||
<summary>
|
||||
Writes the beginning of a Json object.
|
||||
Writes the beginning of a JSON object.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Bson.BsonWriter.WritePropertyName(System.String)">
|
||||
<summary>
|
||||
Writes the property name of a name/value pair on a Json object.
|
||||
Writes the property name of a name/value pair on a JSON object.
|
||||
</summary>
|
||||
<param name="name">The name of the property.</param>
|
||||
</member>
|
||||
@@ -1112,7 +1112,12 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonConverter.GetSchema">
|
||||
<summary>
|
||||
<para>
|
||||
Gets the <see cref="T:Newtonsoft.Json.Schema.JsonSchema"/> of the JSON produced by the JsonConverter.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
<returns>The <see cref="T:Newtonsoft.Json.Schema.JsonSchema"/> of the JSON produced by the JsonConverter.</returns>
|
||||
</member>
|
||||
@@ -2636,13 +2641,13 @@
|
||||
Initializes a new instance of the <see cref="T:Newtonsoft.Json.JsonConverterAttribute"/> class.
|
||||
</summary>
|
||||
<param name="converterType">Type of the converter.</param>
|
||||
<param name="converterParameters">Parameter list to use when constructing the JsonConverter. Can be null.</param>
|
||||
<param name="converterParameters">Parameter list to use when constructing the JsonConverter. Can be null.</param>
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.JsonConverterAttribute.ConverterType">
|
||||
<summary>
|
||||
Gets the type of the converter.
|
||||
Gets the <see cref="T:System.Type"/> of the converter.
|
||||
</summary>
|
||||
<value>The type of the converter.</value>
|
||||
<value>The <see cref="T:System.Type"/> of the converter.</value>
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.JsonConverterAttribute.ConverterParameters">
|
||||
<summary>
|
||||
@@ -2673,7 +2678,7 @@
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.JsonException">
|
||||
<summary>
|
||||
The exception thrown when an error occurs during Json serialization or deserialization.
|
||||
The exception thrown when an error occurs during JSON serialization or deserialization.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonException.#ctor">
|
||||
@@ -2882,7 +2887,7 @@
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.JsonReaderException">
|
||||
<summary>
|
||||
The exception thrown when an error occurs while reading Json text.
|
||||
The exception thrown when an error occurs while reading JSON text.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonReaderException.#ctor">
|
||||
@@ -2932,9 +2937,14 @@
|
||||
</summary>
|
||||
<value>The path to the JSON where the error occurred.</value>
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.JsonRequiredAttribute">
|
||||
<summary>
|
||||
Instructs the <see cref="T:Newtonsoft.Json.JsonSerializer"/> to always serialize the member, and require the member has a value.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.JsonSerializationException">
|
||||
<summary>
|
||||
The exception thrown when an error occurs during Json serialization or deserialization.
|
||||
The exception thrown when an error occurs during JSON serialization or deserialization.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonSerializationException.#ctor">
|
||||
@@ -3035,14 +3045,14 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonSerializer.Deserialize(Newtonsoft.Json.JsonReader)">
|
||||
<summary>
|
||||
Deserializes the Json structure contained by the specified <see cref="T:Newtonsoft.Json.JsonReader"/>.
|
||||
Deserializes the JSON structure contained by the specified <see cref="T:Newtonsoft.Json.JsonReader"/>.
|
||||
</summary>
|
||||
<param name="reader">The <see cref="T:Newtonsoft.Json.JsonReader"/> that contains the JSON structure to deserialize.</param>
|
||||
<returns>The <see cref="T:System.Object"/> being deserialized.</returns>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonSerializer.Deserialize(System.IO.TextReader,System.Type)">
|
||||
<summary>
|
||||
Deserializes the Json structure contained by the specified <see cref="T:System.IO.StringReader"/>
|
||||
Deserializes the JSON structure contained by the specified <see cref="T:System.IO.StringReader"/>
|
||||
into an instance of the specified type.
|
||||
</summary>
|
||||
<param name="reader">The <see cref="T:System.IO.TextReader"/> containing the object.</param>
|
||||
@@ -3051,7 +3061,7 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonSerializer.Deserialize``1(Newtonsoft.Json.JsonReader)">
|
||||
<summary>
|
||||
Deserializes the Json structure contained by the specified <see cref="T:Newtonsoft.Json.JsonReader"/>
|
||||
Deserializes the JSON structure contained by the specified <see cref="T:Newtonsoft.Json.JsonReader"/>
|
||||
into an instance of the specified type.
|
||||
</summary>
|
||||
<param name="reader">The <see cref="T:Newtonsoft.Json.JsonReader"/> containing the object.</param>
|
||||
@@ -3060,7 +3070,7 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonSerializer.Deserialize(Newtonsoft.Json.JsonReader,System.Type)">
|
||||
<summary>
|
||||
Deserializes the Json structure contained by the specified <see cref="T:Newtonsoft.Json.JsonReader"/>
|
||||
Deserializes the JSON structure contained by the specified <see cref="T:Newtonsoft.Json.JsonReader"/>
|
||||
into an instance of the specified type.
|
||||
</summary>
|
||||
<param name="reader">The <see cref="T:Newtonsoft.Json.JsonReader"/> containing the object.</param>
|
||||
@@ -3069,18 +3079,18 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonSerializer.Serialize(System.IO.TextWriter,System.Object)">
|
||||
<summary>
|
||||
Serializes the specified <see cref="T:System.Object"/> and writes the Json structure
|
||||
Serializes the specified <see cref="T:System.Object"/> and writes the JSON structure
|
||||
to a <c>Stream</c> using the specified <see cref="T:System.IO.TextWriter"/>.
|
||||
</summary>
|
||||
<param name="textWriter">The <see cref="T:System.IO.TextWriter"/> used to write the Json structure.</param>
|
||||
<param name="textWriter">The <see cref="T:System.IO.TextWriter"/> used to write the JSON structure.</param>
|
||||
<param name="value">The <see cref="T:System.Object"/> to serialize.</param>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonSerializer.Serialize(Newtonsoft.Json.JsonWriter,System.Object,System.Type)">
|
||||
<summary>
|
||||
Serializes the specified <see cref="T:System.Object"/> and writes the Json structure
|
||||
Serializes the specified <see cref="T:System.Object"/> and writes the JSON structure
|
||||
to a <c>Stream</c> using the specified <see cref="T:System.IO.TextWriter"/>.
|
||||
</summary>
|
||||
<param name="jsonWriter">The <see cref="T:Newtonsoft.Json.JsonWriter"/> used to write the Json structure.</param>
|
||||
<param name="jsonWriter">The <see cref="T:Newtonsoft.Json.JsonWriter"/> used to write the JSON structure.</param>
|
||||
<param name="value">The <see cref="T:System.Object"/> to serialize.</param>
|
||||
<param name="objectType">
|
||||
The type of the value being serialized.
|
||||
@@ -3090,10 +3100,10 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonSerializer.Serialize(System.IO.TextWriter,System.Object,System.Type)">
|
||||
<summary>
|
||||
Serializes the specified <see cref="T:System.Object"/> and writes the Json structure
|
||||
Serializes the specified <see cref="T:System.Object"/> and writes the JSON structure
|
||||
to a <c>Stream</c> using the specified <see cref="T:System.IO.TextWriter"/>.
|
||||
</summary>
|
||||
<param name="textWriter">The <see cref="T:System.IO.TextWriter"/> used to write the Json structure.</param>
|
||||
<param name="textWriter">The <see cref="T:System.IO.TextWriter"/> used to write the JSON structure.</param>
|
||||
<param name="value">The <see cref="T:System.Object"/> to serialize.</param>
|
||||
<param name="objectType">
|
||||
The type of the value being serialized.
|
||||
@@ -3103,10 +3113,10 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonSerializer.Serialize(Newtonsoft.Json.JsonWriter,System.Object)">
|
||||
<summary>
|
||||
Serializes the specified <see cref="T:System.Object"/> and writes the Json structure
|
||||
Serializes the specified <see cref="T:System.Object"/> and writes the JSON structure
|
||||
to a <c>Stream</c> using the specified <see cref="T:Newtonsoft.Json.JsonWriter"/>.
|
||||
</summary>
|
||||
<param name="jsonWriter">The <see cref="T:Newtonsoft.Json.JsonWriter"/> used to write the Json structure.</param>
|
||||
<param name="jsonWriter">The <see cref="T:Newtonsoft.Json.JsonWriter"/> used to write the JSON structure.</param>
|
||||
<param name="value">The <see cref="T:System.Object"/> to serialize.</param>
|
||||
</member>
|
||||
<member name="E:Newtonsoft.Json.JsonSerializer.Error">
|
||||
@@ -3130,6 +3140,12 @@
|
||||
</summary>
|
||||
<value>The trace writer.</value>
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.JsonSerializer.EqualityComparer">
|
||||
<summary>
|
||||
Gets or sets the equality comparer used by the serializer when comparing references.
|
||||
</summary>
|
||||
<value>The equality comparer.</value>
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.JsonSerializer.TypeNameHandling">
|
||||
<summary>
|
||||
Gets or sets how type name writing and reading is handled by the serializer.
|
||||
@@ -3241,7 +3257,7 @@
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.JsonSerializer.DateFormatString">
|
||||
<summary>
|
||||
Get or set how <see cref="T:System.DateTime"/> and <see cref="T:System.DateTimeOffset"/> values are formatting when writing JSON text.
|
||||
Get or set how <see cref="T:System.DateTime"/> and <see cref="T:System.DateTimeOffset"/> values are formatted when writing JSON text, and the expected date format when reading JSON text.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.JsonSerializer.Culture">
|
||||
@@ -3345,12 +3361,24 @@
|
||||
</summary>
|
||||
<value>The contract resolver.</value>
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.JsonSerializerSettings.EqualityComparer">
|
||||
<summary>
|
||||
Gets or sets the equality comparer used by the serializer when comparing references.
|
||||
</summary>
|
||||
<value>The equality comparer.</value>
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.JsonSerializerSettings.ReferenceResolver">
|
||||
<summary>
|
||||
Gets or sets the <see cref="T:Newtonsoft.Json.Serialization.IReferenceResolver"/> used by the serializer when resolving references.
|
||||
</summary>
|
||||
<value>The reference resolver.</value>
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.JsonSerializerSettings.ReferenceResolverProvider">
|
||||
<summary>
|
||||
Gets or sets a function that creates the <see cref="T:Newtonsoft.Json.Serialization.IReferenceResolver"/> used by the serializer when resolving references.
|
||||
</summary>
|
||||
<value>A function that creates the <see cref="T:Newtonsoft.Json.Serialization.IReferenceResolver"/> used by the serializer when resolving references.</value>
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.JsonSerializerSettings.TraceWriter">
|
||||
<summary>
|
||||
Gets or sets the <see cref="T:Newtonsoft.Json.Serialization.ITraceWriter"/> used by the serializer when writing trace messages.
|
||||
@@ -3377,7 +3405,7 @@
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.JsonSerializerSettings.DateFormatString">
|
||||
<summary>
|
||||
Get or set how <see cref="T:System.DateTime"/> and <see cref="T:System.DateTimeOffset"/> values are formatting when writing JSON text.
|
||||
Get or set how <see cref="T:System.DateTime"/> and <see cref="T:System.DateTimeOffset"/> values are formatted when writing JSON text, and the expected date format when reading JSON text.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.JsonSerializerSettings.MaxDepth">
|
||||
@@ -3544,12 +3572,12 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonTextWriter.WriteStartObject">
|
||||
<summary>
|
||||
Writes the beginning of a Json object.
|
||||
Writes the beginning of a JSON object.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonTextWriter.WriteStartArray">
|
||||
<summary>
|
||||
Writes the beginning of a Json array.
|
||||
Writes the beginning of a JSON array.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonTextWriter.WriteStartConstructor(System.String)">
|
||||
@@ -3566,7 +3594,7 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonTextWriter.WritePropertyName(System.String)">
|
||||
<summary>
|
||||
Writes the property name of a name/value pair on a Json object.
|
||||
Writes the property name of a name/value pair on a JSON object.
|
||||
</summary>
|
||||
<param name="name">The name of the property.</param>
|
||||
</member>
|
||||
@@ -3781,7 +3809,7 @@
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.JsonToken">
|
||||
<summary>
|
||||
Specifies the type of Json token.
|
||||
Specifies the type of JSON token.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:Newtonsoft.Json.JsonToken.None">
|
||||
@@ -3876,7 +3904,12 @@
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.JsonValidatingReader">
|
||||
<summary>
|
||||
<para>
|
||||
Represents a reader that provides <see cref="T:Newtonsoft.Json.Schema.JsonSchema"/> validation.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonValidatingReader.#ctor(Newtonsoft.Json.JsonReader)">
|
||||
@@ -3986,7 +4019,7 @@
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.JsonWriterException">
|
||||
<summary>
|
||||
The exception thrown when an error occurs while reading Json text.
|
||||
The exception thrown when an error occurs while reading JSON text.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.JsonWriterException.#ctor">
|
||||
@@ -6434,12 +6467,12 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Linq.JTokenWriter.WriteStartObject">
|
||||
<summary>
|
||||
Writes the beginning of a Json object.
|
||||
Writes the beginning of a JSON object.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Linq.JTokenWriter.WriteStartArray">
|
||||
<summary>
|
||||
Writes the beginning of a Json array.
|
||||
Writes the beginning of a JSON array.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Linq.JTokenWriter.WriteStartConstructor(System.String)">
|
||||
@@ -6456,7 +6489,7 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Linq.JTokenWriter.WritePropertyName(System.String)">
|
||||
<summary>
|
||||
Writes the property name of a name/value pair on a Json object.
|
||||
Writes the property name of a name/value pair on a JSON object.
|
||||
</summary>
|
||||
<param name="name">The name of the property.</param>
|
||||
</member>
|
||||
@@ -6806,12 +6839,22 @@
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.Schema.Extensions">
|
||||
<summary>
|
||||
<para>
|
||||
Contains the JSON schema extension methods.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Schema.Extensions.IsValid(Newtonsoft.Json.Linq.JToken,Newtonsoft.Json.Schema.JsonSchema)">
|
||||
<summary>
|
||||
<para>
|
||||
Determines whether the <see cref="T:Newtonsoft.Json.Linq.JToken"/> is valid.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
<param name="source">The source <see cref="T:Newtonsoft.Json.Linq.JToken"/> to test.</param>
|
||||
<param name="schema">The schema to test with.</param>
|
||||
@@ -6821,7 +6864,12 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Schema.Extensions.IsValid(Newtonsoft.Json.Linq.JToken,Newtonsoft.Json.Schema.JsonSchema,System.Collections.Generic.IList{System.String}@)">
|
||||
<summary>
|
||||
<para>
|
||||
Determines whether the <see cref="T:Newtonsoft.Json.Linq.JToken"/> is valid.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
<param name="source">The source <see cref="T:Newtonsoft.Json.Linq.JToken"/> to test.</param>
|
||||
<param name="schema">The schema to test with.</param>
|
||||
@@ -6832,14 +6880,24 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Schema.Extensions.Validate(Newtonsoft.Json.Linq.JToken,Newtonsoft.Json.Schema.JsonSchema)">
|
||||
<summary>
|
||||
<para>
|
||||
Validates the specified <see cref="T:Newtonsoft.Json.Linq.JToken"/>.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
<param name="source">The source <see cref="T:Newtonsoft.Json.Linq.JToken"/> to test.</param>
|
||||
<param name="schema">The schema to test with.</param>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Schema.Extensions.Validate(Newtonsoft.Json.Linq.JToken,Newtonsoft.Json.Schema.JsonSchema,Newtonsoft.Json.Schema.ValidationEventHandler)">
|
||||
<summary>
|
||||
<para>
|
||||
Validates the specified <see cref="T:Newtonsoft.Json.Linq.JToken"/>.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
<param name="source">The source <see cref="T:Newtonsoft.Json.Linq.JToken"/> to test.</param>
|
||||
<param name="schema">The schema to test with.</param>
|
||||
@@ -6847,7 +6905,12 @@
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.Schema.JsonSchema">
|
||||
<summary>
|
||||
<para>
|
||||
An in-memory representation of a JSON Schema.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Schema.JsonSchema.#ctor">
|
||||
@@ -7104,7 +7167,12 @@
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.Schema.JsonSchemaException">
|
||||
<summary>
|
||||
<para>
|
||||
Returns detailed information about the schema exception.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Schema.JsonSchemaException.#ctor">
|
||||
@@ -7156,7 +7224,12 @@
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.Schema.JsonSchemaGenerator">
|
||||
<summary>
|
||||
<para>
|
||||
Generates a <see cref="T:Newtonsoft.Json.Schema.JsonSchema"/> from a specified <see cref="T:System.Type"/>.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Schema.JsonSchemaGenerator.Generate(System.Type)">
|
||||
@@ -7204,7 +7277,12 @@
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.Schema.JsonSchemaResolver">
|
||||
<summary>
|
||||
<para>
|
||||
Resolves <see cref="T:Newtonsoft.Json.Schema.JsonSchema"/> from an id.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Schema.JsonSchemaResolver.#ctor">
|
||||
@@ -7227,7 +7305,12 @@
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.Schema.JsonSchemaType">
|
||||
<summary>
|
||||
<para>
|
||||
The value types allowed by the <see cref="T:Newtonsoft.Json.Schema.JsonSchema"/>.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:Newtonsoft.Json.Schema.JsonSchemaType.None">
|
||||
@@ -7277,7 +7360,12 @@
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.Schema.UndefinedSchemaIdHandling">
|
||||
<summary>
|
||||
<para>
|
||||
Specifies undefined schema Id handling options for the <see cref="T:Newtonsoft.Json.Schema.JsonSchemaGenerator"/>.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:Newtonsoft.Json.Schema.UndefinedSchemaIdHandling.None">
|
||||
@@ -7297,7 +7385,12 @@
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.Schema.ValidationEventArgs">
|
||||
<summary>
|
||||
<para>
|
||||
Returns detailed information related to the <see cref="T:Newtonsoft.Json.Schema.ValidationEventHandler"/>.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.Schema.ValidationEventArgs.Exception">
|
||||
@@ -7320,7 +7413,12 @@
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.Schema.ValidationEventHandler">
|
||||
<summary>
|
||||
<para>
|
||||
Represents the callback method that will handle JSON schema validation events and the <see cref="T:Newtonsoft.Json.Schema.ValidationEventArgs"/>.
|
||||
</para>
|
||||
<note type="caution">
|
||||
JSON Schema validation has been moved to its own package. See <see href="http://www.newtonsoft.com/jsonschema">http://www.newtonsoft.com/jsonschema</see> for more details.
|
||||
</note>
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:Newtonsoft.Json.Serialization.CamelCasePropertyNamesContractResolver">
|
||||
@@ -7493,7 +7591,14 @@
|
||||
Resolves the name of the property.
|
||||
</summary>
|
||||
<param name="propertyName">Name of the property.</param>
|
||||
<returns>Name of the property.</returns>
|
||||
<returns>Resolved name of the property.</returns>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Serialization.DefaultContractResolver.ResolveDictionaryKey(System.String)">
|
||||
<summary>
|
||||
Resolves the key of the dictionary. By default <see cref="M:Newtonsoft.Json.Serialization.DefaultContractResolver.ResolvePropertyName(System.String)"/> is used to resolve dictionary keys.
|
||||
</summary>
|
||||
<param name="dictionaryKey">Key of the dictionary.</param>
|
||||
<returns>Resolved key of the dictionary.</returns>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Serialization.DefaultContractResolver.GetResolvedPropertyName(System.String)">
|
||||
<summary>
|
||||
@@ -8012,6 +8117,12 @@
|
||||
</summary>
|
||||
<value>The property name resolver.</value>
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.Serialization.JsonDictionaryContract.DictionaryKeyResolver">
|
||||
<summary>
|
||||
Gets or sets the dictionary key resolver.
|
||||
</summary>
|
||||
<value>The dictionary key resolver.</value>
|
||||
</member>
|
||||
<member name="P:Newtonsoft.Json.Serialization.JsonDictionaryContract.DictionaryKeyType">
|
||||
<summary>
|
||||
Gets the <see cref="T:System.Type"/> of the dictionary keys.
|
||||
@@ -8472,6 +8583,7 @@
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:Newtonsoft.Json.Serialization.ReflectionAttributeProvider"/> class.
|
||||
</summary>
|
||||
<param name="attributeProvider">The instance to get attributes for. This parameter should be a <see cref="T:System.Type"/>, <see cref="T:System.Reflection.MemberInfo"/>, <see cref="T:System.Reflection.ParameterInfo"/> or <see cref="T:System.Reflection.Assembly"/>.</param>
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Serialization.ReflectionAttributeProvider.GetAttributes(System.Boolean)">
|
||||
<summary>
|
||||
@@ -8581,7 +8693,7 @@
|
||||
</member>
|
||||
<member name="M:Newtonsoft.Json.Utilities.CollectionUtils.IndexOf``1(System.Collections.Generic.IEnumerable{``0},``0,System.Collections.Generic.IEqualityComparer{``0})">
|
||||
<summary>
|
||||
Returns the index of the first occurrence in a sequence by using a specified IEqualityComparer.
|
||||
Returns the index of the first occurrence in a sequence by using a specified IEqualityComparer{TSource}.
|
||||
</summary>
|
||||
<typeparam name="TSource">The type of the elements of source.</typeparam>
|
||||
<param name="list">A sequence in which to locate a value.</param>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -161,6 +161,237 @@
|
||||
asynchronous request failed.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:Microsoft.Azure.ResourceBase">
|
||||
<summary>
|
||||
Resource information.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.ResourceBase.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the ResourceBase class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.ResourceBase.#ctor(System.String)">
|
||||
<summary>
|
||||
Initializes a new instance of the ResourceBase class with required
|
||||
arguments.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.ResourceBase.Location">
|
||||
<summary>
|
||||
Required. Gets or sets the location of the resource.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.ResourceBase.Tags">
|
||||
<summary>
|
||||
Optional. Gets or sets the tags attached to the resource.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:Microsoft.Azure.ResourceBaseExtended">
|
||||
<summary>
|
||||
Resource information with extended details.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.ResourceBaseExtended.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the ResourceBaseExtended class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.ResourceBaseExtended.#ctor(System.String)">
|
||||
<summary>
|
||||
Initializes a new instance of the ResourceBaseExtended class with
|
||||
required arguments.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.ResourceBaseExtended.Id">
|
||||
<summary>
|
||||
Optional. Gets or sets the ID of the resource.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.ResourceBaseExtended.Name">
|
||||
<summary>
|
||||
Optional. Gets or sets the name of the resource.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.ResourceBaseExtended.Type">
|
||||
<summary>
|
||||
Optional. Gets or sets the type of the resource.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:Microsoft.Azure.ResourceIdentity">
|
||||
<summary>
|
||||
Resource identity.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.ResourceIdentity.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the ResourceIdentity class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.ResourceIdentity.#ctor(System.String,System.String,System.String)">
|
||||
<summary>
|
||||
Initializes a new instance of the ResourceIdentity class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.ResourceIdentity.GetProviderFromResourceType(System.String)">
|
||||
<summary>
|
||||
Returns provider string from resource type.
|
||||
</summary>
|
||||
<param name="resourceType">Resource type.</param>
|
||||
<returns>Provider</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.ResourceIdentity.GetTypeFromResourceType(System.String)">
|
||||
<summary>
|
||||
Returns type string from resource type.
|
||||
</summary>
|
||||
<param name="resourceType">Resource type.</param>
|
||||
<returns>Type</returns>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.ResourceIdentity.ParentResourcePath">
|
||||
<summary>
|
||||
Optional. Gets or sets parent resource path (optional).
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.ResourceIdentity.ResourceName">
|
||||
<summary>
|
||||
Required. Gets or sets resource name.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.ResourceIdentity.ResourceProviderApiVersion">
|
||||
<summary>
|
||||
Required. Gets or sets API version of the resource provider.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.ResourceIdentity.ResourceProviderNamespace">
|
||||
<summary>
|
||||
Required. Gets or sets namespace of the resource provider.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.ResourceIdentity.ResourceType">
|
||||
<summary>
|
||||
Required. Gets or sets resource type.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:Microsoft.Azure.Common.OData.FilterParameterAttribute">
|
||||
<summary>
|
||||
Parameter attribute used with OData filters.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.Common.OData.FilterParameterAttribute.#ctor(System.String)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:Microsoft.Azure.Common.OData.FilterParameterAttribute"/> class.
|
||||
</summary>
|
||||
<param name="name">Property name to use in the filter.</param>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.Common.OData.FilterParameterAttribute.#ctor(System.String,System.String)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:Microsoft.Azure.Common.OData.FilterParameterAttribute"/> class.
|
||||
</summary>
|
||||
<param name="name">Property name to use in the filter.</param>
|
||||
<param name="format">Format of the value.</param>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.Common.OData.FilterParameterAttribute.Name">
|
||||
<summary>
|
||||
Property name to use in the filter.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.Common.OData.FilterParameterAttribute.Format">
|
||||
<summary>
|
||||
Format of the value.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:Microsoft.Azure.Common.OData.FilterString">
|
||||
<summary>
|
||||
Handles OData filter generation.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.Common.OData.FilterString.Generate``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})">
|
||||
<summary>
|
||||
Generates an OData filter from a specified Linq expression.
|
||||
</summary>
|
||||
<typeparam name="T">Filter type</typeparam>
|
||||
<param name="filter">Entity to use for filter generation</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:Microsoft.Azure.Common.OData.UrlExpressionVisitor">
|
||||
<summary>
|
||||
Expression visitor class that generates OData style $filter parameter.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.Common.OData.UrlExpressionVisitor.VisitBinary(System.Linq.Expressions.BinaryExpression)">
|
||||
<summary>
|
||||
Visits binary expression like ==, &&, >, etc.
|
||||
</summary>
|
||||
<param name="node">Node to visit.</param>
|
||||
<returns>Original node.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.Common.OData.UrlExpressionVisitor.VisitUnary(System.Linq.Expressions.UnaryExpression)">
|
||||
<summary>
|
||||
Visits binary expression !foo.
|
||||
</summary>
|
||||
<param name="node">Node to visit.</param>
|
||||
<returns>Original node.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.Common.OData.UrlExpressionVisitor.VisitConditional(System.Linq.Expressions.ConditionalExpression)">
|
||||
<summary>
|
||||
Visits conditional expression foo == true ? bar : fee. Throws NotSupportedException.
|
||||
</summary>
|
||||
<param name="node">Node to visit.</param>
|
||||
<returns>Throws NotSupportedException.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.Common.OData.UrlExpressionVisitor.VisitNew(System.Linq.Expressions.NewExpression)">
|
||||
<summary>
|
||||
Visits new object expression like new DateTime().
|
||||
</summary>
|
||||
<param name="node">Node to visit.</param>
|
||||
<returns>Original node.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.Common.OData.UrlExpressionVisitor.VisitConstant(System.Linq.Expressions.ConstantExpression)">
|
||||
<summary>
|
||||
Visits constants like 'a' or 123.
|
||||
</summary>
|
||||
<param name="node">Node to visit.</param>
|
||||
<returns>Original node.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.Common.OData.UrlExpressionVisitor.VisitMember(System.Linq.Expressions.MemberExpression)">
|
||||
<summary>
|
||||
Visits object members like p.Foo or dateTime.Hour.
|
||||
</summary>
|
||||
<param name="node">Node to visit.</param>
|
||||
<returns>Original node.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.Common.OData.UrlExpressionVisitor.VisitMethodCall(System.Linq.Expressions.MethodCallExpression)">
|
||||
<summary>
|
||||
Visits method calls like Contains, StartsWith, etc. Methods that are not supported will throw an exception.
|
||||
</summary>
|
||||
<param name="node">Node to visit.</param>
|
||||
<returns>Original node.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.Common.OData.UrlExpressionVisitor.closeUnaryBooleanOperator">
|
||||
<summary>
|
||||
Appends 'eq true' to Boolean unary operators.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.Common.OData.UrlExpressionVisitor.PrintConstant(System.Object)">
|
||||
<summary>
|
||||
Helper method to print constant.
|
||||
</summary>
|
||||
<param name="val">Object to print.</param>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.Common.OData.UrlExpressionVisitor.GetPropertyName(System.Reflection.PropertyInfo)">
|
||||
<summary>
|
||||
Helper method to generate property name.
|
||||
</summary>
|
||||
<param name="property">Property to examine.</param>
|
||||
<returns>Property name or value specified in the FilterParameterAttribute.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.Common.OData.UrlExpressionVisitor.GetPropertyFormat(System.Reflection.PropertyInfo)">
|
||||
<summary>
|
||||
Helper method to retrieve format from the FilterParameterAttribute.
|
||||
</summary>
|
||||
<param name="property">Property to examine.</param>
|
||||
<returns>Format from FilterParameterAttribute or null.</returns>
|
||||
</member>
|
||||
<member name="T:Microsoft.Azure.Common.Properties.Resources">
|
||||
<summary>
|
||||
A strongly-typed resource class, for looking up localized strings, etc.
|
||||
|
||||
Binary file not shown.
@@ -0,0 +1,114 @@
|
||||
<?xml version="1.0"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>Microsoft.Azure.KeyVault.Core</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:Microsoft.Azure.KeyVault.Core.IKey">
|
||||
<summary>
|
||||
Interface for Keys
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.KeyVault.Core.IKey.DecryptAsync(System.Byte[],System.Byte[],System.Byte[],System.Byte[],System.String,System.Threading.CancellationToken)">
|
||||
<summary>
|
||||
Decrypts the specified cipher text.
|
||||
</summary>
|
||||
<param name="ciphertext">The cipher text to decrypt</param>
|
||||
<param name="iv">The initialization vector</param>
|
||||
<param name="authenticationData">The authentication data</param>
|
||||
<param name="algorithm">The algorithm to use</param>
|
||||
<param name="token">Cancellation token</param>
|
||||
<returns>The plain text</returns>
|
||||
<remarks>If algorithm is not specified, an implementation should use its default algorithm.
|
||||
Not all algorithms require, or support, all parameters.</remarks>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.KeyVault.Core.IKey.EncryptAsync(System.Byte[],System.Byte[],System.Byte[],System.String,System.Threading.CancellationToken)">
|
||||
<summary>
|
||||
Encrypts the specified plain text.
|
||||
</summary>
|
||||
<param name="plaintext">The plain text to encrypt</param>
|
||||
<param name="iv">The initialization vector</param>
|
||||
<param name="authenticationData">The authentication data</param>
|
||||
<param name="algorithm">The algorithm to use</param>
|
||||
<param name="token">Cancellation token</param>
|
||||
<returns>A Tuple consisting of the cipher text, the authentication tag (if applicable), the algorithm used</returns>
|
||||
<remarks>If the algorithm is not specified, an implementation should use its default algorithm.
|
||||
Not all algorithyms require, or support, all parameters.</remarks>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.KeyVault.Core.IKey.WrapKeyAsync(System.Byte[],System.String,System.Threading.CancellationToken)">
|
||||
<summary>
|
||||
Encrypts the specified key material.
|
||||
</summary>
|
||||
<param name="key">The key material to encrypt</param>
|
||||
<param name="algorithm">The algorithm to use</param>
|
||||
<param name="token">Cancellation token</param>
|
||||
<returns>A Tuple consisting of the encrypted key and the algorithm used</returns>
|
||||
<remarks>If the algorithm is not specified, an implementation should use its default algorithm</remarks>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.KeyVault.Core.IKey.UnwrapKeyAsync(System.Byte[],System.String,System.Threading.CancellationToken)">
|
||||
<summary>
|
||||
Decrypts the specified key material.
|
||||
</summary>
|
||||
<param name="encryptedKey">The encrypted key material</param>
|
||||
<param name="algorithm">The algorithm to use</param>
|
||||
<param name="token">Cancellation token</param>
|
||||
<returns>The decrypted key material</returns>
|
||||
<remarks>If the algorithm is not specified, an implementation should use its default algorithm</remarks>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.KeyVault.Core.IKey.SignAsync(System.Byte[],System.String,System.Threading.CancellationToken)">
|
||||
<summary>
|
||||
Signs the specified digest.
|
||||
</summary>
|
||||
<param name="digest">The digest to sign</param>
|
||||
<param name="algorithm">The algorithm to use</param>
|
||||
<param name="token">Cancellation token</param>
|
||||
<returns>A Tuple consisting of the signature and the algorithm used</returns>
|
||||
<remarks>If the algorithm is not specified, an implementation should use its default algorithm</remarks>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.KeyVault.Core.IKey.VerifyAsync(System.Byte[],System.Byte[],System.String,System.Threading.CancellationToken)">
|
||||
<summary>
|
||||
Verifies the specified signature value
|
||||
</summary>
|
||||
<param name="digest">The digest</param>
|
||||
<param name="signature">The signature value</param>
|
||||
<param name="algorithm">The algorithm to use</param>
|
||||
<param name="token">Cancellation token</param>
|
||||
<returns>A bool indicating whether the signature was successfully verified</returns>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.KeyVault.Core.IKey.DefaultEncryptionAlgorithm">
|
||||
<summary>
|
||||
The default encryption algorithm for this key
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.KeyVault.Core.IKey.DefaultKeyWrapAlgorithm">
|
||||
<summary>
|
||||
The default key wrap algorithm for this key
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.KeyVault.Core.IKey.DefaultSignatureAlgorithm">
|
||||
<summary>
|
||||
The default signature algorithm for this key
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Microsoft.Azure.KeyVault.Core.IKey.Kid">
|
||||
<summary>
|
||||
The key identifier
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:Microsoft.Azure.KeyVault.Core.IKeyResolver">
|
||||
<summary>
|
||||
Interface for key resolvers.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Azure.KeyVault.Core.IKeyResolver.ResolveKeyAsync(System.String,System.Threading.CancellationToken)">
|
||||
<summary>
|
||||
Provides an IKey implementation for the specified key identifier.
|
||||
</summary>
|
||||
<param name="kid">The key identifier to resolve</param>
|
||||
<param name="token">Cancellation token</param>
|
||||
<returns>The resolved IKey implementation or null</returns>
|
||||
<remarks>Implementations should check the format of the kid to ensure that it is recognized. Null, rather than
|
||||
an exception, should be returned for unrecognized key identifiers to enable chaining of key resolvers.</remarks>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
Binary file not shown.
Binary file not shown.
@@ -40443,7 +40443,7 @@
|
||||
<param name="model">The model to use.</param>
|
||||
<param name="messageReaderSettings">The message reader settings to use.</param>
|
||||
<param name="version">The version of the payload being read.</param>
|
||||
<param name="typeKindFromPayloadFunc">A func to compute the type kind from the payload shape if it could not be determined from the expected type or the payload type.</param>
|
||||
<param name="typeKindPeekedFromPayloadFunc">A func to compute the type kind from the payload shape if it could not be determined from the expected type or the payload type.</param>
|
||||
<param name="targetTypeKind">The target type kind to be used to read the payload.</param>
|
||||
<param name="serializationTypeNameAnnotation">Potentially non-null instance of an annotation to put on the value reported from the reader.</param>
|
||||
<returns>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -4,19 +4,19 @@
|
||||
<name>Microsoft.WindowsAzure.Configuration</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:Microsoft.WindowsAzure.CloudConfigurationManager">
|
||||
<member name="T:Microsoft.Azure.CloudConfigurationManager">
|
||||
<summary>
|
||||
Configuration manager for accessing Windows Azure settings.
|
||||
Configuration manager for accessing Microsoft Azure settings.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.WindowsAzure.CloudConfigurationManager.GetSetting(System.String)">
|
||||
<member name="M:Microsoft.Azure.CloudConfigurationManager.GetSetting(System.String)">
|
||||
<summary>
|
||||
Gets a setting with the given name.
|
||||
</summary>
|
||||
<param name="name">Setting name.</param>
|
||||
<returns>Setting value or null if not found.</returns>
|
||||
</member>
|
||||
<member name="P:Microsoft.WindowsAzure.CloudConfigurationManager.AppSettings">
|
||||
<member name="P:Microsoft.Azure.CloudConfigurationManager.AppSettings">
|
||||
<summary>
|
||||
Gets application settings.
|
||||
</summary>
|
||||
@@ -42,17 +42,17 @@
|
||||
Looks up a localized string similar to Argument "{0}" cannot be an empty string..
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:Microsoft.WindowsAzure.AzureApplicationSettings">
|
||||
<member name="T:Microsoft.Azure.AzureApplicationSettings">
|
||||
<summary>
|
||||
Windows Azure settings.
|
||||
Microsoft Azure settings.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.WindowsAzure.AzureApplicationSettings.#ctor">
|
||||
<member name="M:Microsoft.Azure.AzureApplicationSettings.#ctor">
|
||||
<summary>
|
||||
Initializes the settings.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.WindowsAzure.AzureApplicationSettings.IsMissingSettingException(System.Exception)">
|
||||
<member name="M:Microsoft.Azure.AzureApplicationSettings.IsMissingSettingException(System.Exception)">
|
||||
<summary>
|
||||
Checks whether the given exception represents an exception throws
|
||||
for a missing setting.
|
||||
@@ -60,14 +60,14 @@
|
||||
<param name="e">Exception</param>
|
||||
<returns>True for the missing setting exception.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.WindowsAzure.AzureApplicationSettings.GetSetting(System.String)">
|
||||
<member name="M:Microsoft.Azure.AzureApplicationSettings.GetSetting(System.String)">
|
||||
<summary>
|
||||
Gets a setting with the given name.
|
||||
</summary>
|
||||
<param name="name">Setting name.</param>
|
||||
<returns>Setting value or null if such setting does not exist.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.WindowsAzure.AzureApplicationSettings.GetValue(System.String,System.String,System.Func{System.String,System.String})">
|
||||
<member name="M:Microsoft.Azure.AzureApplicationSettings.GetValue(System.String,System.String,System.Func{System.String,System.String})">
|
||||
<summary>
|
||||
Gets setting's value from the given provider.
|
||||
</summary>
|
||||
@@ -76,21 +76,21 @@
|
||||
<param name="getValue">Method to obtain given setting.</param>
|
||||
<returns>Setting value, or null if not found.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.WindowsAzure.AzureApplicationSettings.GetServiceRuntimeSetting(System.String)">
|
||||
<member name="M:Microsoft.Azure.AzureApplicationSettings.GetServiceRuntimeSetting(System.String)">
|
||||
<summary>
|
||||
Gets a configuration setting from the service runtime.
|
||||
</summary>
|
||||
<param name="name">Setting name.</param>
|
||||
<returns>Setting value or null if not found.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.WindowsAzure.AzureApplicationSettings.GetServiceRuntimeAssembly">
|
||||
<member name="M:Microsoft.Azure.AzureApplicationSettings.GetServiceRuntimeAssembly">
|
||||
<summary>
|
||||
Loads and returns the latest available version of the service
|
||||
runtime assembly.
|
||||
</summary>
|
||||
<returns>Loaded assembly, if any.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.WindowsAzure.NativeMethods.GetAssemblyPath(System.String)">
|
||||
<member name="M:Microsoft.Azure.NativeMethods.GetAssemblyPath(System.String)">
|
||||
<summary>
|
||||
Gets an assembly path from the GAC given a partial name.
|
||||
</summary>
|
||||
|
||||
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
+3
-3
@@ -74,15 +74,15 @@ function getAssetGroups() {
|
||||
function resolveAssetGroupPaths(assetGroup, assetManifestPath) {
|
||||
assetGroup.basePath = path.dirname(assetManifestPath);
|
||||
assetGroup.inputPaths = assetGroup.inputs.map(function (inputPath) {
|
||||
return path.join(assetGroup.basePath, inputPath);
|
||||
return path.resolve(path.join(assetGroup.basePath, inputPath));
|
||||
});
|
||||
assetGroup.watchPaths = [];
|
||||
if (!!assetGroup.watch) {
|
||||
assetGroup.watchPaths = assetGroup.watch.map(function (watchPath) {
|
||||
return path.join(assetGroup.basePath, watchPath);
|
||||
return path.resolve(path.join(assetGroup.basePath, watchPath));
|
||||
});
|
||||
}
|
||||
assetGroup.outputPath = path.join(assetGroup.basePath, assetGroup.output);
|
||||
assetGroup.outputPath = path.resolve(path.join(assetGroup.basePath, assetGroup.output));
|
||||
assetGroup.outputDir = path.dirname(assetGroup.outputPath);
|
||||
assetGroup.outputFileName = path.basename(assetGroup.output);
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProductVersion>2.5</ProductVersion>
|
||||
<ProductVersion>2.7</ProductVersion>
|
||||
<ProjectGuid>{03c5327d-4e8e-45a7-acd1-e18e7caa3c4a}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
@@ -65,7 +65,7 @@
|
||||
<!-- Import the target files for this project template -->
|
||||
<PropertyGroup>
|
||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
|
||||
<CloudExtensionsDir Condition=" '$(CloudExtensionsDir)' == '' ">$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\Windows Azure Tools\2.5\</CloudExtensionsDir>
|
||||
<CloudExtensionsDir Condition=" '$(CloudExtensionsDir)' == '' ">$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\Windows Azure Tools\2.7\</CloudExtensionsDir>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(CloudExtensionsDir)Microsoft.WindowsAzure.targets" />
|
||||
<!-- The BeforeAddRoleContent override ensures that content in themes and modules get added
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<ServiceConfiguration serviceName="OrchardCloudService" osFamily="4" osVersion="*" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" schemaVersion="2014-06.2.4">
|
||||
<ServiceConfiguration serviceName="OrchardCloudService" osFamily="4" osVersion="*" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" schemaVersion="2015-04.2.6">
|
||||
<Role name="Orchard.Azure.Web">
|
||||
<Instances count="1" />
|
||||
<ConfigurationSettings>
|
||||
@@ -15,6 +15,7 @@
|
||||
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.DiagnosticLevel" value="1" />
|
||||
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.CacheSizePercentage" value="30" />
|
||||
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.ConfigStoreConnectionString" value="UseDevelopmentStorage=true" />
|
||||
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
|
||||
</ConfigurationSettings>
|
||||
</Role>
|
||||
</ServiceConfiguration>
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<ServiceDefinition name="OrchardCloudService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2014-06.2.4">
|
||||
<ServiceDefinition name="OrchardCloudService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2015-04.2.6">
|
||||
<WebRole name="Orchard.Azure.Web">
|
||||
<Sites>
|
||||
<Site name="Web">
|
||||
@@ -20,6 +20,7 @@
|
||||
<Setting name="Orchard.Azure.DatabaseCache.HostIdentifier" />
|
||||
<Setting name="Orchard.Azure.DatabaseCache.CacheName" />
|
||||
<Setting name="Orchard.Azure.DatabaseCache.AuthorizationToken" />
|
||||
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" />
|
||||
</ConfigurationSettings>
|
||||
<Endpoints>
|
||||
<InputEndpoint name="HttpIn" protocol="http" port="80" />
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
<IISExpressWindowsAuthentication />
|
||||
<IISExpressUseClassicPipelineMode />
|
||||
<TargetFrameworkProfile />
|
||||
<UseGlobalApplicationHostFile>true</UseGlobalApplicationHostFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
@@ -90,13 +91,13 @@
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\..\..\lib\windowsazure\Microsoft.WindowsAzure.Configuration.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.WindowsAzure.Diagnostics">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<Reference Include="Microsoft.WindowsAzure.Diagnostics, Version=2.7.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\..\lib\windowsazure\Microsoft.WindowsAzure.Diagnostics.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.WindowsAzure.ServiceRuntime">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<Reference Include="Microsoft.WindowsAzure.ServiceRuntime, Version=2.7.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\..\lib\windowsazure\Microsoft.WindowsAzure.ServiceRuntime.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.WindowsAzure.Storage">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
@@ -181,10 +182,6 @@
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="WebMatrix.Data">
|
||||
<HintPath>..\..\..\lib\aspnetmvc\WebMatrix.Data.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Global.asax.cs">
|
||||
|
||||
@@ -42,8 +42,9 @@
|
||||
<system.diagnostics>
|
||||
<trace>
|
||||
<listeners>
|
||||
<add type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=2.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" name="AzureDiagnostics">
|
||||
<filter type=""/>
|
||||
<add type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=2.7.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
|
||||
name="AzureDiagnostics">
|
||||
<filter type="" />
|
||||
</add>
|
||||
</listeners>
|
||||
</trace>
|
||||
@@ -185,25 +186,25 @@
|
||||
<assemblyIdentity name="Autofac" publicKeyToken="17863af14b0044da"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30AD4FE6B2A6AEED" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Microsoft.WindowsAzure.Storage" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.3.0.0" newVersion="4.3.0.0"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Microsoft.Data.Edm" publicKeyToken="31BF3856AD364E35" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.6.3.0" newVersion="5.6.3.0"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.6.4.0" newVersion="5.6.4.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Microsoft.Data.OData" publicKeyToken="31BF3856AD364E35" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.6.3.0" newVersion="5.6.3.0"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.6.4.0" newVersion="5.6.4.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Microsoft.Data.Services.Client" publicKeyToken="31BF3856AD364E35" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.6.3.0" newVersion="5.6.3.0"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.6.4.0" newVersion="5.6.4.0"/>
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2013
|
||||
VisualStudioVersion = 12.0.31101.0
|
||||
# Visual Studio 14
|
||||
VisualStudioVersion = 14.0.23107.0
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Modules", "Modules", "{8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}"
|
||||
EndProject
|
||||
|
||||
@@ -154,6 +154,7 @@
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<probing privatePath="App_Data/Dependencies"/>
|
||||
<dependentAssembly>
|
||||
<!-- 1.0.1.0 by NHibernate.Linq, Version=0.0.0.0 -->
|
||||
<assemblyIdentity name="Iesi.Collections" publicKeyToken="AA95F207798DFDB4" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
@@ -190,6 +191,7 @@
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<!-- 3.3.1.4000 by NHibernate.Linq, Version=0.0.0.0 -->
|
||||
<assemblyIdentity name="NHibernate" publicKeyToken="aa95f207798dfdb4" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.0.4000" newVersion="4.0.0.4000"/>
|
||||
</dependentAssembly>
|
||||
@@ -198,24 +200,34 @@
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0"/>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30AD4FE6B2A6AEED" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Microsoft.WindowsAzure.Storage" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.3.0.0" newVersion="4.3.0.0"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Microsoft.Data.Edm" publicKeyToken="31BF3856AD364E35" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.6.3.0" newVersion="5.6.3.0"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.6.4.0" newVersion="5.6.4.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Microsoft.Data.OData" publicKeyToken="31BF3856AD364E35" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.6.3.0" newVersion="5.6.3.0"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.6.4.0" newVersion="5.6.4.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Microsoft.Data.Services.Client" publicKeyToken="31BF3856AD364E35" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.6.3.0" newVersion="5.6.3.0"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.6.4.0" newVersion="5.6.4.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<!-- 2.0.0.0 by System.Data.SqlServerCe, Version=4.0.0.0 -->
|
||||
<assemblyIdentity name="System.Transactions" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<!-- 2.0.0.0 by System.Data.SqlServerCe, Version=4.0.0.0 -->
|
||||
<assemblyIdentity name="System.Data" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
|
||||
@@ -195,7 +195,7 @@
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Microsoft.WindowsAzure.Storage" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Autofac" publicKeyToken="17863af14b0044da"/>
|
||||
|
||||
@@ -303,5 +303,24 @@ namespace Orchard.Tests.Modules.Indexing {
|
||||
_provider.Store("default", _provider.New(1).Add("field", "value2"));
|
||||
Assert.That(searchBuilder.WithField("id", "1").Count(), Is.EqualTo(1));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void IndexProviderShouldDeleteMoreThanMaxTermsCount() {
|
||||
_provider.CreateIndex("default");
|
||||
|
||||
var documents = Enumerable.Range(1, 1025).Select(i => _provider.New(i).Add("field", "value1"));
|
||||
_provider.Store("default", documents);
|
||||
|
||||
var searchBuilder = _provider.CreateSearchBuilder("default");
|
||||
|
||||
Assert.That(searchBuilder.Count(), Is.EqualTo(1025));
|
||||
Assert.That(searchBuilder.Get(1).ContentItemId, Is.EqualTo(1));
|
||||
Assert.That(searchBuilder.Get(1025).ContentItemId, Is.EqualTo(1025));
|
||||
|
||||
_provider.Delete("default", Enumerable.Range(1, 1025));
|
||||
|
||||
|
||||
Assert.That(searchBuilder.Count(), Is.EqualTo(0));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -281,6 +281,10 @@
|
||||
<Project>{5D0F00F0-26C9-4785-AD61-B85710C60EB0}</Project>
|
||||
<Name>Orchard.Tags</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\Orchard.Web\Modules\Orchard.TaskLease\Orchard.TaskLease.csproj">
|
||||
<Project>{3f72a4e9-7b72-4260-b010-c16ec54f9baf}</Project>
|
||||
<Name>Orchard.TaskLease</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\Orchard.Web\Modules\Orchard.Themes\Orchard.Themes.csproj">
|
||||
<Project>{CDE24A24-01D3-403C-84B9-37722E18DFB7}</Project>
|
||||
<Name>Orchard.Themes</Name>
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Autofac" publicKeyToken="17863af14b0044da"/>
|
||||
|
||||
@@ -14,6 +14,12 @@ namespace Orchard.Tests {
|
||||
Resolve(_container);
|
||||
}
|
||||
|
||||
[TearDown]
|
||||
public void Cleanup() {
|
||||
if (_container != null)
|
||||
_container.Dispose();
|
||||
}
|
||||
|
||||
#if false
|
||||
// technically more accurate, and doesn't work
|
||||
[SetUp]
|
||||
|
||||
@@ -76,5 +76,39 @@ namespace Orchard.Tests.ContentManagement {
|
||||
|
||||
Assert.That((object)testingPartDynamic, Is.AssignableTo<IEnumerable<ContentPart>>());
|
||||
}
|
||||
|
||||
|
||||
[Test]
|
||||
public void NullCheckingCanBeDoneOnProperties() {
|
||||
var contentItem = new ContentItem();
|
||||
var contentPart = new ContentPart { TypePartDefinition = new ContentTypePartDefinition(new ContentPartDefinition("FooPart"), new SettingsDictionary()) };
|
||||
var contentField = new ContentField { PartFieldDefinition = new ContentPartFieldDefinition(new ContentFieldDefinition("FooType"), "FooField", new SettingsDictionary()) };
|
||||
|
||||
dynamic item = contentItem;
|
||||
dynamic part = contentPart;
|
||||
|
||||
Assert.That(item.FooPart == null, Is.True);
|
||||
Assert.That(item.FooPart != null, Is.False);
|
||||
|
||||
contentItem.Weld(contentPart);
|
||||
|
||||
Assert.That(item.FooPart == null, Is.False);
|
||||
Assert.That(item.FooPart != null, Is.True);
|
||||
Assert.That(item.FooPart, Is.SameAs(contentPart));
|
||||
|
||||
Assert.That(part.FooField == null, Is.True);
|
||||
Assert.That(part.FooField != null, Is.False);
|
||||
Assert.That(item.FooPart.FooField == null, Is.True);
|
||||
Assert.That(item.FooPart.FooField != null, Is.False);
|
||||
|
||||
contentPart.Weld(contentField);
|
||||
|
||||
Assert.That(part.FooField == null, Is.False);
|
||||
Assert.That(part.FooField != null, Is.True);
|
||||
Assert.That(item.FooPart.FooField == null, Is.False);
|
||||
Assert.That(item.FooPart.FooField != null, Is.True);
|
||||
Assert.That(part.FooField, Is.SameAs(contentField));
|
||||
Assert.That(item.FooPart.FooField, Is.SameAs(contentField));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ namespace Orchard.Tests {
|
||||
protected string _databaseFilePath;
|
||||
protected ISessionFactory _sessionFactory;
|
||||
protected StubClock _clock;
|
||||
|
||||
protected ShellSettings _shellSettings;
|
||||
|
||||
[TestFixtureSetUp]
|
||||
public void InitFixture() {
|
||||
@@ -47,9 +47,10 @@ namespace Orchard.Tests {
|
||||
builder.RegisterType<InfosetHandler>().As<IContentHandler>();
|
||||
builder.RegisterInstance(new StubLocator(_session)).As<ISessionLocator>();
|
||||
builder.RegisterInstance(_clock).As<IClock>();
|
||||
builder.RegisterGeneric(typeof(Repository<>)).As(typeof(IRepository<>));
|
||||
builder.RegisterInstance(new ShellSettings { Name = ShellSettings.DefaultName, DataProvider = "SqlCe" });
|
||||
builder.RegisterInstance(new TestTransactionManager(_session)).As<ITransactionManager>();
|
||||
builder.RegisterGeneric(typeof(Repository<>)).As(typeof(IRepository<>)).InstancePerLifetimeScope();
|
||||
builder.RegisterInstance(_shellSettings = new ShellSettings { Name = ShellSettings.DefaultName, DataProvider = "SqlCe" });
|
||||
builder.RegisterType<TestTransactionManager>().As<ITransactionManager>().InstancePerLifetimeScope();
|
||||
builder.Register(context => _sessionFactory.OpenSession()).As<ISession>().InstancePerLifetimeScope();
|
||||
|
||||
Register(builder);
|
||||
_container = builder.Build();
|
||||
|
||||
@@ -97,10 +97,18 @@ namespace Orchard.Tests.DisplayManagement {
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override object Resolve(Type serviceType) {
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override bool TryResolve<T>(out T service) {
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override bool TryResolve(Type serviceType, out object service) {
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override T GetState<T>(string name) {
|
||||
object value;
|
||||
return _state.TryGetValue(name, out value) ? (T)value : default(T);
|
||||
|
||||
@@ -25,7 +25,6 @@ using Orchard.Tests.Stubs;
|
||||
using Orchard.Tests.Utility;
|
||||
using Orchard.WebApi.Routes;
|
||||
using IModelBinderProvider = Orchard.Mvc.ModelBinders.IModelBinderProvider;
|
||||
using Orchard.Tasks;
|
||||
|
||||
namespace Orchard.Tests.Environment {
|
||||
[TestFixture]
|
||||
@@ -96,6 +95,10 @@ namespace Orchard.Tests.Environment {
|
||||
var ext = new ExtensionDescriptor { Id = "Orchard.Framework" };
|
||||
ext.Features = new[] { new FeatureDescriptor { Extension = ext, Id = ext.Id } };
|
||||
yield return ext;
|
||||
|
||||
var settings = new ExtensionDescriptor { Id = "Settings" };
|
||||
settings.Features = new[] { new FeatureDescriptor { Extension = settings, Id = settings.Id } };
|
||||
yield return settings;
|
||||
}
|
||||
|
||||
public IEnumerable<FeatureDescriptor> AvailableFeatures() {
|
||||
@@ -139,8 +142,6 @@ namespace Orchard.Tests.Environment {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
[Test, Ignore("containers are disposed when calling BeginRequest, maybe by the StubVirtualPathMonitor")]
|
||||
public void NormalDependenciesShouldBeUniquePerRequestContainer() {
|
||||
var host = _lifetime.Resolve<IOrchardHost>();
|
||||
@@ -180,6 +181,7 @@ namespace Orchard.Tests.Environment {
|
||||
Assert.That(again2a, Is.SameAs(dep2a));
|
||||
Assert.That(again2b, Is.SameAs(dep2b));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void SingletonDependenciesShouldBeUniquePerShell() {
|
||||
var host = _lifetime.Resolve<IOrchardHost>();
|
||||
@@ -203,6 +205,7 @@ namespace Orchard.Tests.Environment {
|
||||
Assert.That(dep2, Is.SameAs(dep2a));
|
||||
Assert.That(dep2, Is.SameAs(dep2b));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TransientDependenciesShouldBeUniquePerResolve() {
|
||||
var host = _lifetime.Resolve<IOrchardHost>();
|
||||
|
||||
@@ -28,13 +28,6 @@ namespace Orchard.Tests.Environment {
|
||||
container.Mock<IHttpContextAccessor>()
|
||||
.Setup(x => x.Current())
|
||||
.Returns(() => _httpContextCurrent);
|
||||
|
||||
container.Mock<IHttpContextAccessor>()
|
||||
.Setup(x => x.CreateContext(It.IsAny<ILifetimeScope>()))
|
||||
.Returns(() => new StubHttpContext());
|
||||
|
||||
container.Mock<IWorkContextEvents>()
|
||||
.Setup(x => x.Started());
|
||||
}
|
||||
|
||||
[Test]
|
||||
|
||||
@@ -206,7 +206,7 @@ Features:
|
||||
Category: Content types
|
||||
AnotherWiki Editor:
|
||||
Description: A rich editor for wiki contents.
|
||||
Dependencies: TinyMCE, AnotherWiki
|
||||
Dependencies: TinyMce, AnotherWiki
|
||||
Category: Input methods
|
||||
AnotherWiki DistributionList:
|
||||
Description: Sends e-mail alerts when wiki contents gets published.
|
||||
@@ -241,7 +241,7 @@ Features:
|
||||
Assert.That(featureDescriptor.Description, Is.EqualTo("A rich editor for wiki contents."));
|
||||
Assert.That(featureDescriptor.Category, Is.EqualTo("Input methods"));
|
||||
Assert.That(featureDescriptor.Dependencies.Count(), Is.EqualTo(2));
|
||||
Assert.That(featureDescriptor.Dependencies.Contains("TinyMCE"));
|
||||
Assert.That(featureDescriptor.Dependencies.Contains("TinyMce"));
|
||||
Assert.That(featureDescriptor.Dependencies.Contains("AnotherWiki"));
|
||||
break;
|
||||
case "AnotherWiki DistributionList":
|
||||
@@ -287,7 +287,7 @@ Category: Content types
|
||||
Features:
|
||||
AnotherWiki Editor:
|
||||
Description: A rich editor for wiki contents.
|
||||
Dependencies: TinyMCE, AnotherWiki
|
||||
Dependencies: TinyMce, AnotherWiki
|
||||
Category: Input methods
|
||||
AnotherWiki DistributionList:
|
||||
Description: Sends e-mail alerts when wiki contents gets published.
|
||||
@@ -323,7 +323,7 @@ Features:
|
||||
Assert.That(featureDescriptor.Description, Is.EqualTo("A rich editor for wiki contents."));
|
||||
Assert.That(featureDescriptor.Category, Is.EqualTo("Input methods"));
|
||||
Assert.That(featureDescriptor.Dependencies.Count(), Is.EqualTo(2));
|
||||
Assert.That(featureDescriptor.Dependencies.Contains("TinyMCE"));
|
||||
Assert.That(featureDescriptor.Dependencies.Contains("TinyMce"));
|
||||
Assert.That(featureDescriptor.Dependencies.Contains("AnotherWiki"));
|
||||
break;
|
||||
case "AnotherWiki DistributionList":
|
||||
|
||||
@@ -207,7 +207,7 @@ Features:
|
||||
Category: Content types
|
||||
AnotherWiki Editor:
|
||||
Description: A rich editor for wiki contents.
|
||||
Dependencies: TinyMCE, AnotherWiki
|
||||
Dependencies: TinyMce, AnotherWiki
|
||||
Category: Input methods
|
||||
AnotherWiki DistributionList:
|
||||
Description: Sends e-mail alerts when wiki contents gets published.
|
||||
@@ -243,7 +243,7 @@ Features:
|
||||
Assert.That(featureDescriptor.Description, Is.EqualTo("A rich editor for wiki contents."));
|
||||
Assert.That(featureDescriptor.Category, Is.EqualTo("Input methods"));
|
||||
Assert.That(featureDescriptor.Dependencies.Count(), Is.EqualTo(2));
|
||||
Assert.That(featureDescriptor.Dependencies.Contains("TinyMCE"));
|
||||
Assert.That(featureDescriptor.Dependencies.Contains("TinyMce"));
|
||||
Assert.That(featureDescriptor.Dependencies.Contains("AnotherWiki"));
|
||||
break;
|
||||
case "AnotherWiki DistributionList":
|
||||
|
||||
@@ -0,0 +1,118 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Autofac;
|
||||
using Moq;
|
||||
using NUnit.Framework;
|
||||
using Orchard.Environment.Configuration;
|
||||
using Orchard.Environment.Descriptor.Models;
|
||||
using Orchard.Environment.Extensions;
|
||||
using Orchard.Environment.Extensions.Models;
|
||||
using Orchard.Environment.ShellBuilders;
|
||||
using Orchard.Tests.Environment.TestDependencies;
|
||||
using Orchard.Utility.Extensions;
|
||||
|
||||
namespace Orchard.Tests.Environment.ShellBuilders {
|
||||
[TestFixture]
|
||||
public class CompositionStrategyTests : ContainerTestBase {
|
||||
private CompositionStrategy _compositionStrategy;
|
||||
private Mock<IExtensionManager> _extensionManager;
|
||||
|
||||
protected override void Register(ContainerBuilder builder) {
|
||||
_extensionManager = new Mock<IExtensionManager>(MockBehavior.Loose);
|
||||
|
||||
builder.RegisterType<CompositionStrategy>().AsSelf();
|
||||
builder.RegisterInstance(_extensionManager.Object);
|
||||
}
|
||||
|
||||
protected override void Resolve(ILifetimeScope container) {
|
||||
_compositionStrategy = container.Resolve<CompositionStrategy>();
|
||||
|
||||
var alphaExtension = new ExtensionDescriptor {
|
||||
Id = "Alpha",
|
||||
Name = "Alpha",
|
||||
ExtensionType = "Module"
|
||||
};
|
||||
|
||||
var alphaFeatureDescriptor = new FeatureDescriptor {
|
||||
Id = "Alpha",
|
||||
Name = "Alpha",
|
||||
Extension = alphaExtension
|
||||
};
|
||||
|
||||
var betaFeatureDescriptor = new FeatureDescriptor {
|
||||
Id = "Beta",
|
||||
Name = "Beta",
|
||||
Extension = alphaExtension,
|
||||
Dependencies = new List<string> {
|
||||
"Alpha"
|
||||
}
|
||||
};
|
||||
|
||||
alphaExtension.Features = new List<FeatureDescriptor> {
|
||||
alphaFeatureDescriptor,
|
||||
betaFeatureDescriptor
|
||||
};
|
||||
|
||||
var features = new List<Feature> {
|
||||
new Feature {
|
||||
Descriptor = alphaFeatureDescriptor,
|
||||
ExportedTypes = new List<Type> {
|
||||
typeof(AlphaDependency)
|
||||
}
|
||||
},
|
||||
new Feature {
|
||||
Descriptor = betaFeatureDescriptor,
|
||||
ExportedTypes = new List<Type> {
|
||||
typeof(BetaDependency)
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
_extensionManager.Setup(x => x.AvailableExtensions()).Returns(new List<ExtensionDescriptor> {
|
||||
alphaExtension
|
||||
});
|
||||
|
||||
_extensionManager.Setup(x => x.AvailableFeatures()).Returns(
|
||||
_extensionManager.Object.AvailableExtensions()
|
||||
.SelectMany(ext => ext.Features)
|
||||
.ToReadOnlyCollection());
|
||||
|
||||
_extensionManager.Setup(x => x.LoadFeatures(It.IsAny<IEnumerable<FeatureDescriptor>>())).Returns(features);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void ComposeReturnsBlueprintWithExpectedDependencies() {
|
||||
var shellSettings = CreateShell();
|
||||
var shellDescriptor = CreateShellDescriptor("Alpha", "Beta");
|
||||
var shellBlueprint = _compositionStrategy.Compose(shellSettings, shellDescriptor);
|
||||
|
||||
Assert.That(shellBlueprint.Dependencies.Count(x => x.Type == typeof (AlphaDependency)), Is.EqualTo(1));
|
||||
Assert.That(shellBlueprint.Dependencies.Count(x => x.Type == typeof(BetaDependency)), Is.EqualTo(1));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void ComposeReturnsBlueprintWithAutoEnabledDependencyFeatures() {
|
||||
var shellSettings = CreateShell();
|
||||
var shellDescriptor = CreateShellDescriptor("Beta"); // Beta has a dependency on Alpha, but is not enabled initially.
|
||||
var shellBlueprint = _compositionStrategy.Compose(shellSettings, shellDescriptor);
|
||||
|
||||
Assert.That(shellBlueprint.Dependencies.Count(x => x.Type == typeof(AlphaDependency)), Is.EqualTo(1));
|
||||
Assert.That(shellDescriptor.Features.Count(x => x.Name == "Alpha"), Is.EqualTo(1));
|
||||
}
|
||||
|
||||
private ShellSettings CreateShell() {
|
||||
return new ShellSettings();
|
||||
}
|
||||
|
||||
private ShellDescriptor CreateShellDescriptor(params string[] enabledFeatures) {
|
||||
var shellDescriptor = new ShellDescriptor {
|
||||
Features = enabledFeatures.Select(x => new ShellFeature {
|
||||
Name = x
|
||||
})
|
||||
};
|
||||
|
||||
return shellDescriptor;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -56,11 +56,7 @@ namespace Orchard.Tests.Environment.ShellBuilders {
|
||||
|
||||
_container.Mock<IHttpContextAccessor>()
|
||||
.Setup(x => x.Current())
|
||||
.Returns(httpContext);
|
||||
|
||||
_container.Mock<IHttpContextAccessor>()
|
||||
.Setup(x => x.CreateContext(It.IsAny<ILifetimeScope>()))
|
||||
.Returns(httpContext);
|
||||
.Returns(default(HttpContextBase));
|
||||
|
||||
var factory = _container.Resolve<IShellContextFactory>();
|
||||
|
||||
|
||||
@@ -43,10 +43,6 @@ namespace Orchard.Tests.Environment.State {
|
||||
_container.Mock<IHttpContextAccessor>()
|
||||
.Setup(x=>x.Current())
|
||||
.Returns(httpContext);
|
||||
_container.Mock<IHttpContextAccessor>()
|
||||
.Setup(x => x.CreateContext(It.IsAny<ILifetimeScope>()))
|
||||
.Returns(httpContext);
|
||||
|
||||
}
|
||||
|
||||
[TearDown]
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
namespace Orchard.Tests.Environment.TestDependencies {
|
||||
|
||||
public interface IAlphaDependency : IDependency {
|
||||
}
|
||||
|
||||
public class AlphaDependency : IAlphaDependency {
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
namespace Orchard.Tests.Environment.TestDependencies {
|
||||
|
||||
public interface IBetaDependency : IDependency {
|
||||
}
|
||||
|
||||
public class BetaDependency : IBetaDependency {
|
||||
public IAlphaDependency Alpha { get; set; }
|
||||
|
||||
public BetaDependency(IAlphaDependency alpha) {
|
||||
Alpha = alpha;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -42,10 +42,18 @@ namespace Orchard.Tests.Localization {
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override object Resolve(Type serviceType) {
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override bool TryResolve<T>(out T service) {
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override bool TryResolve(Type serviceType, out object service) {
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override T GetState<T>(string name) {
|
||||
if (name == "CurrentCulture") return (T)((object)CultureName);
|
||||
if (name == "CurrentCalendar") return (T)((object)CalendarName);
|
||||
|
||||
@@ -245,9 +245,12 @@
|
||||
<Compile Include="Environment\Extensions\ExtensionLoaderCoordinatorTests.cs" />
|
||||
<Compile Include="Environment\Features\FeatureManagerTests.cs" />
|
||||
<Compile Include="Environment\Loaders\DynamicExtensionLoaderTests.cs" />
|
||||
<Compile Include="Environment\ShellBuilders\CompositionStrategyTests.cs" />
|
||||
<Compile Include="Environment\State\DefaultProcessingEngineTests.cs" />
|
||||
<Compile Include="Environment\RunningShellTableTests.cs" />
|
||||
<Compile Include="Environment\StubHostEnvironment.cs" />
|
||||
<Compile Include="Environment\TestDependencies\AlphaDependency.cs" />
|
||||
<Compile Include="Environment\TestDependencies\BetaDependency.cs" />
|
||||
<Compile Include="Environment\Utility\Build.cs" />
|
||||
<Compile Include="Environment\Warmup\WarmupUtilityTests.cs" />
|
||||
<Compile Include="FileSystems\AppData\AppDataFolderTests.cs" />
|
||||
@@ -269,6 +272,7 @@
|
||||
<Compile Include="Localization\DateTimePartsTests.cs" />
|
||||
<Compile Include="Localization\DefaultDateLocalizationServicesTests.cs" />
|
||||
<Compile Include="Localization\DefaultDateFormatterTests.cs" />
|
||||
<Compile Include="Stubs\StubMachineNameProvider.cs" />
|
||||
<Compile Include="Stubs\StubCultureSelector.cs" />
|
||||
<Compile Include="Localization\TestHelpers.cs" />
|
||||
<Compile Include="Logging\OrchardFileAppenderTests.cs" />
|
||||
@@ -290,6 +294,8 @@
|
||||
<Compile Include="Stubs\StubVirtualPathMonitor.cs" />
|
||||
<Compile Include="Stubs\StubCacheManager.cs" />
|
||||
<Compile Include="Stubs\StubWebSiteFolder.cs" />
|
||||
<Compile Include="Stubs\StubWorkContextScope.cs" />
|
||||
<Compile Include="Tasks\DistributedLockServiceTests.cs" />
|
||||
<Compile Include="Time\TimeZoneSelectorTests.cs" />
|
||||
<Compile Include="UI\Resources\ResourceManagerTests.cs" />
|
||||
<Compile Include="UI\ShapeTests.cs" />
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
using System.Web;
|
||||
using Autofac;
|
||||
using Orchard.Mvc;
|
||||
|
||||
namespace Orchard.Tests.Stubs {
|
||||
@@ -17,10 +16,6 @@ namespace Orchard.Tests.Stubs {
|
||||
return _httpContext;
|
||||
}
|
||||
|
||||
public HttpContextBase CreateContext(ILifetimeScope lifetimeScope) {
|
||||
return _httpContext;
|
||||
}
|
||||
|
||||
public void Set(HttpContextBase httpContext) {
|
||||
_httpContext = httpContext;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
using Orchard.Environment;
|
||||
|
||||
namespace Orchard.Tests.Stubs {
|
||||
public class StubMachineNameProvider : IMachineNameProvider {
|
||||
public StubMachineNameProvider() {
|
||||
MachineName = "Orchard Machine";
|
||||
}
|
||||
public string MachineName { get; set; }
|
||||
public string GetMachineName() {
|
||||
return MachineName;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -13,7 +13,7 @@ namespace Orchard.Tests.Stubs {
|
||||
|
||||
public StubWorkContextAccessor(ILifetimeScope lifetimeScope) {
|
||||
_lifetimeScope = lifetimeScope;
|
||||
_workContext = new WorkContextImpl(_lifetimeScope);
|
||||
_workContext = new WorkContextImpl(lifetimeScope);
|
||||
}
|
||||
|
||||
public class WorkContextImpl : WorkContext {
|
||||
@@ -123,10 +123,18 @@ namespace Orchard.Tests.Stubs {
|
||||
return _lifetimeScope.Resolve<T>();
|
||||
}
|
||||
|
||||
public override object Resolve(Type serviceType) {
|
||||
return _lifetimeScope.Resolve(serviceType);
|
||||
}
|
||||
|
||||
public override bool TryResolve<T>(out T service) {
|
||||
return _lifetimeScope.TryResolve<T>(out service);
|
||||
}
|
||||
|
||||
public override bool TryResolve(Type serviceType, out object service) {
|
||||
return _lifetimeScope.TryResolve(serviceType, out service);
|
||||
}
|
||||
|
||||
public override T GetState<T>(string name) {
|
||||
return (T) _contextDictonary[name];
|
||||
}
|
||||
@@ -149,7 +157,9 @@ namespace Orchard.Tests.Stubs {
|
||||
}
|
||||
|
||||
public IWorkContextScope CreateWorkContextScope() {
|
||||
throw new NotSupportedException();
|
||||
var workLifetime = _lifetimeScope.BeginLifetimeScope("work");
|
||||
var workContext = new WorkContextImpl(workLifetime);
|
||||
return new StubWorkContextScope(workContext, workLifetime);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
using Autofac;
|
||||
|
||||
namespace Orchard.Tests.Stubs {
|
||||
public class StubWorkContextScope : IWorkContextScope {
|
||||
private readonly ILifetimeScope _lifetimeScope;
|
||||
|
||||
public StubWorkContextScope(WorkContext workContext, ILifetimeScope lifetimeScope) {
|
||||
_lifetimeScope = lifetimeScope;
|
||||
WorkContext = workContext;
|
||||
}
|
||||
|
||||
public WorkContext WorkContext { get; }
|
||||
|
||||
public void Dispose() {
|
||||
_lifetimeScope.Dispose();
|
||||
}
|
||||
|
||||
public TService Resolve<TService>() {
|
||||
return WorkContext.Resolve<TService>();
|
||||
}
|
||||
|
||||
public bool TryResolve<TService>(out TService service) {
|
||||
return WorkContext.TryResolve(out service);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,265 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Autofac;
|
||||
using NUnit.Framework;
|
||||
using Orchard.Data;
|
||||
using Orchard.Environment;
|
||||
using Orchard.Environment.Configuration;
|
||||
using Orchard.Services;
|
||||
using Orchard.Tasks.Locking.Records;
|
||||
using Orchard.Tasks.Locking.Services;
|
||||
using Orchard.Tests.Stubs;
|
||||
|
||||
namespace Orchard.Tests.Tasks {
|
||||
[TestFixture]
|
||||
public class DistributedLockServiceTests : DatabaseEnabledTestsBase {
|
||||
private const string LockName = "Orchard Test Lock";
|
||||
private DistributedLockService _distributedLockService;
|
||||
private StubMachineNameProvider _machineNameProvider;
|
||||
private IRepository<DistributedLockRecord> _distributedLockRepository;
|
||||
private ITransactionManager _transactionManager;
|
||||
|
||||
protected override IEnumerable<Type> DatabaseTypes {
|
||||
get { yield return typeof(DistributedLockRecord); }
|
||||
}
|
||||
|
||||
public override void Register(ContainerBuilder builder) {
|
||||
builder.RegisterType<StubClock>().As<IClock>();
|
||||
builder.RegisterType<StubMachineNameProvider>().As<IMachineNameProvider>().SingleInstance();
|
||||
builder.RegisterType<DistributedLockService>().AsSelf();
|
||||
}
|
||||
|
||||
public override void Init() {
|
||||
base.Init();
|
||||
_distributedLockService = _container.Resolve<DistributedLockService>();
|
||||
_machineNameProvider = (StubMachineNameProvider)_container.Resolve<IMachineNameProvider>();
|
||||
_distributedLockRepository = _container.Resolve<IRepository<DistributedLockRecord>>();
|
||||
_transactionManager = _container.Resolve<ITransactionManager>();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TryAcquiringLockTwiceOnSameMachineSucceeds() {
|
||||
IDistributedLock @lock;
|
||||
var attempt1 = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromSeconds(60), out @lock);
|
||||
var attempt2 = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromSeconds(60), out @lock);
|
||||
|
||||
Assert.That(attempt1, Is.True);
|
||||
Assert.That(attempt2, Is.True);
|
||||
}
|
||||
|
||||
|
||||
[Test]
|
||||
public void AcquiringTheLockOnTheSameMachineReturnsTheSameLock() {
|
||||
IDistributedLock lock1, lock2;
|
||||
_distributedLockService.TryAcquireLock(LockName, TimeSpan.FromSeconds(60), out lock1);
|
||||
_distributedLockService.TryAcquireLock(LockName, TimeSpan.FromSeconds(60), out lock2);
|
||||
|
||||
Assert.AreEqual(lock1, lock2);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void ReleasingSingleLockDeletesRecord() {
|
||||
IDistributedLock lock1;
|
||||
_distributedLockService.TryAcquireLock(LockName, TimeSpan.FromSeconds(60), out lock1);
|
||||
|
||||
lock1.Dispose();
|
||||
var lockRecord = _distributedLockRepository.Table.FirstOrDefault();
|
||||
|
||||
Assert.That(lockRecord, Is.Null);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void ReleasingFirstLockDoesntDeleteRecord() {
|
||||
IDistributedLock lock1, lock2;
|
||||
_distributedLockService.TryAcquireLock(LockName, TimeSpan.FromSeconds(60), out lock1);
|
||||
_distributedLockService.TryAcquireLock(LockName, TimeSpan.FromSeconds(60), out lock2);
|
||||
|
||||
lock1.Dispose();
|
||||
var lockRecord = _distributedLockRepository.Table.FirstOrDefault();
|
||||
Assert.That(lockRecord, Is.Not.Null);
|
||||
|
||||
lock2.Dispose();
|
||||
lockRecord = _distributedLockRepository.Table.FirstOrDefault();
|
||||
Assert.That(lockRecord, Is.Null);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TryAcquiringLockTwiceFails() {
|
||||
IDistributedLock @lock;
|
||||
_machineNameProvider.MachineName = "Orchard Test Machine 1";
|
||||
var attempt1 = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromSeconds(60), out @lock);
|
||||
_machineNameProvider.MachineName = "Orchard Test Machine 2";
|
||||
var attempt2 = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromSeconds(60), out @lock);
|
||||
|
||||
Assert.That(attempt1, Is.True);
|
||||
Assert.That(attempt2, Is.False);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TryAcquiringNonExpiredActiveLockFails() {
|
||||
IDistributedLock @lock;
|
||||
CreateNonExpiredActiveLock("Other Machine");
|
||||
var success = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromHours(1), out @lock);
|
||||
|
||||
Assert.That(success, Is.False);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TryAcquiringNonExpiredButInactiveLockFromOtherMachineFails() {
|
||||
IDistributedLock @lock;
|
||||
CreateNonExpiredActiveLock("Other Machine");
|
||||
var success = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromHours(1), out @lock);
|
||||
|
||||
Assert.That(success, Is.False);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TryAcquiringNonExpiredButInactiveLockFromSameMachineSucceeds() {
|
||||
IDistributedLock @lock;
|
||||
CreateNonExpiredActiveLock("Orchard Machine");
|
||||
var success = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromHours(1), out @lock);
|
||||
|
||||
Assert.That(success, Is.True);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TryAcquiringExpiredButActiveLockSucceeds() {
|
||||
IDistributedLock @lock;
|
||||
CreateExpiredButActiveLock("Other Machine");
|
||||
var success = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromHours(1), out @lock);
|
||||
|
||||
Assert.That(success, Is.True);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TryAcquiringNonExpiredAndActiveLockFromCurrentOwnerSucceeds() {
|
||||
IDistributedLock @lock;
|
||||
CreateNonExpiredActiveLock(GetMachineName());
|
||||
var success = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromHours(1), out @lock);
|
||||
|
||||
Assert.That(success, Is.True);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void AcquiringNonExpiredAndActiveLockFromDifferentOwnerThrowsTimeoutException() {
|
||||
CreateNonExpiredActiveLock("Other Machine");
|
||||
Assert.Throws<TimeoutException>(() => _distributedLockService.AcquireLock(LockName, TimeSpan.FromHours(1), TimeSpan.Zero));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void MultipleAcquisitionsFromDifferentMachinesShouldFail() {
|
||||
IDistributedLock @lock;
|
||||
_machineNameProvider.MachineName = "Orchard Test Machine 1";
|
||||
var attempt1 = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromMinutes(60), out @lock);
|
||||
_machineNameProvider.MachineName = "Orchard Test Machine 2";
|
||||
var attempt2 = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromMinutes(60), out @lock);
|
||||
|
||||
Assert.That(attempt1, Is.True);
|
||||
Assert.That(attempt2, Is.False);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void MultipleAcquisitionsFromDifferentMachinesOnDifferentTenantShouldSucceed() {
|
||||
IDistributedLock @lock;
|
||||
_machineNameProvider.MachineName = "Orchard Test Machine 1";
|
||||
var attempt1 = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromSeconds(60), out @lock);
|
||||
_machineNameProvider.MachineName = "Orchard Test Machine 2";
|
||||
_shellSettings.Name = "Foo";
|
||||
var attempt2 = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromSeconds(60), out @lock);
|
||||
|
||||
Assert.That(attempt1, Is.True);
|
||||
Assert.That(attempt2, Is.True);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void MultithreadedAcquisitionsShouldNotCauseTransactionErrors() {
|
||||
var tasks = new List<Task>();
|
||||
|
||||
for (var i = 0; i < 10; i++) {
|
||||
var task = Task.Factory.StartNew(() => {
|
||||
IDistributedLock @lock;
|
||||
Assert.DoesNotThrow(() => _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromHours(1), out @lock));
|
||||
});
|
||||
|
||||
tasks.Add(task);
|
||||
}
|
||||
|
||||
Task.WaitAll(tasks.ToArray());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TryAcquireActiveLockWithNullTimeoutReturnsFalseImmediately() {
|
||||
CreateNonExpiredActiveLock("Other Machine");
|
||||
|
||||
IDistributedLock @lock;
|
||||
var acquired = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromMinutes(1), out @lock);
|
||||
|
||||
Assert.That(acquired, Is.False);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void ActiveLockWithUndefinedValidUntilNeverExpires() {
|
||||
CreateNonExpiredActiveLockThatNeverExpires("Other Machine");
|
||||
|
||||
_clock.Advance(DateTime.MaxValue - _clock.UtcNow); // Fast forward to the End of Time.
|
||||
IDistributedLock @lock;
|
||||
var acquired = _distributedLockService.TryAcquireLock(LockName, TimeSpan.FromMinutes(1), out @lock);
|
||||
|
||||
Assert.That(acquired, Is.False);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void ActiveLockWithUndefinedValidUntilNeverExpiresUntilReleased() {
|
||||
IDistributedLock @lock;
|
||||
|
||||
// Create a never expiring lock.
|
||||
_machineNameProvider.MachineName = "Orchard Test Machine 1";
|
||||
var attempt1 = _distributedLockService.TryAcquireLock(LockName, maxValidFor: null, timeout: null, dLock: out @lock);
|
||||
|
||||
// Release the lock.
|
||||
@lock.Dispose();
|
||||
|
||||
// Acquire the lock from another machine.
|
||||
_machineNameProvider.MachineName = "Orchard Test Machine 2";
|
||||
var attempt2 = _distributedLockService.TryAcquireLock(LockName, maxValidFor: null, timeout: null, dLock: out @lock);
|
||||
|
||||
// Validate the results.
|
||||
Assert.That(attempt1, Is.True);
|
||||
Assert.That(attempt2, Is.True);
|
||||
}
|
||||
|
||||
private DistributedLockRecord CreateLockRecord(DateTime createdUtc, DateTime? validUntilUtc, string machineName) {
|
||||
var record = new DistributedLockRecord {
|
||||
Name = String.Format("DistributedLock:{0}:{1}", ShellSettings.DefaultName, LockName),
|
||||
CreatedUtc = createdUtc,
|
||||
ValidUntilUtc = validUntilUtc,
|
||||
MachineName = machineName,
|
||||
};
|
||||
|
||||
_distributedLockRepository.Create(record);
|
||||
_transactionManager.RequireNew();
|
||||
return record;
|
||||
}
|
||||
|
||||
private DistributedLockRecord CreateNonExpiredActiveLock(string machineName) {
|
||||
var now = _clock.UtcNow;
|
||||
return CreateLockRecord(now, now + TimeSpan.FromHours(1), machineName);
|
||||
}
|
||||
|
||||
private DistributedLockRecord CreateExpiredButActiveLock(string machineName) {
|
||||
var now = _clock.UtcNow;
|
||||
return CreateLockRecord(now, now - TimeSpan.FromHours(1), machineName);
|
||||
}
|
||||
|
||||
private DistributedLockRecord CreateNonExpiredActiveLockThatNeverExpires(string machineName) {
|
||||
var now = _clock.UtcNow;
|
||||
return CreateLockRecord(now, null, machineName);
|
||||
}
|
||||
|
||||
private string GetMachineName() {
|
||||
return _machineNameProvider.GetMachineName();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -23,10 +23,6 @@ namespace Orchard.Tests.Tasks {
|
||||
.Setup(x => x.Current())
|
||||
.Returns(() => null);
|
||||
|
||||
container.Mock<IHttpContextAccessor>()
|
||||
.Setup(x => x.CreateContext(It.IsAny<ILifetimeScope>()))
|
||||
.Returns(() => new StubHttpContext());
|
||||
|
||||
container.Mock<IWorkContextEvents>()
|
||||
.Setup(x => x.Started());
|
||||
}
|
||||
|
||||
@@ -69,10 +69,18 @@ namespace Orchard.Tests.Time {
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override object Resolve(Type serviceType) {
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override bool TryResolve<T>(out T service) {
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override bool TryResolve(Type serviceType, out object service) {
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override T GetState<T>(string name) {
|
||||
return default(T);
|
||||
}
|
||||
|
||||
@@ -61,10 +61,14 @@ namespace Orchard.Core.Common.Drivers {
|
||||
}
|
||||
|
||||
protected override void Importing(BodyPart part, ContentManagement.Handlers.ImportContentContext context) {
|
||||
var importedText = context.Attribute(part.PartDefinition.Name, "Text");
|
||||
if (importedText != null) {
|
||||
part.Text = importedText;
|
||||
// Don't do anything if the tag is not specified.
|
||||
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "Text", importedText =>
|
||||
part.Text = importedText
|
||||
);
|
||||
}
|
||||
|
||||
protected override void Exporting(BodyPart part, ContentManagement.Handlers.ExportContentContext context) {
|
||||
|
||||
@@ -68,35 +68,35 @@ namespace Orchard.Core.Common.Drivers {
|
||||
}
|
||||
|
||||
protected override void Importing(CommonPart part, ImportContentContext context) {
|
||||
var owner = context.Attribute(part.PartDefinition.Name, "Owner");
|
||||
if (owner != null) {
|
||||
// Don't do anything if the tag is not specified.
|
||||
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "Owner", owner => {
|
||||
var contentIdentity = new ContentIdentity(owner);
|
||||
part.Owner = _membershipService.GetUser(contentIdentity.Get("User.UserName"));
|
||||
}
|
||||
// use the super user if the referenced one doesn't exist
|
||||
else {
|
||||
part.Owner = _membershipService.GetUser(Services.WorkContext.CurrentSite.SuperUser);
|
||||
}
|
||||
|
||||
var container = context.Attribute(part.PartDefinition.Name, "Container");
|
||||
if (container != null) {
|
||||
part.Container = context.GetItemFromSession(container);
|
||||
}
|
||||
// use the super user if the referenced one doesn't exist;
|
||||
part.Owner =
|
||||
_membershipService.GetUser(contentIdentity.Get("User.UserName"))
|
||||
?? _membershipService.GetUser(Services.WorkContext.CurrentSite.SuperUser);
|
||||
});
|
||||
|
||||
var createdUtc = context.Attribute(part.PartDefinition.Name, "CreatedUtc");
|
||||
if (createdUtc != null) {
|
||||
part.CreatedUtc = XmlConvert.ToDateTime(createdUtc, XmlDateTimeSerializationMode.Utc);
|
||||
}
|
||||
context.ImportAttribute(part.PartDefinition.Name, "Container", container =>
|
||||
part.Container = context.GetItemFromSession(container)
|
||||
);
|
||||
|
||||
var publishedUtc = context.Attribute(part.PartDefinition.Name, "PublishedUtc");
|
||||
if (publishedUtc != null) {
|
||||
part.PublishedUtc = XmlConvert.ToDateTime(publishedUtc, XmlDateTimeSerializationMode.Utc);
|
||||
}
|
||||
context.ImportAttribute(part.PartDefinition.Name, "CreatedUtc", createdUtc =>
|
||||
part.CreatedUtc = XmlConvert.ToDateTime(createdUtc, XmlDateTimeSerializationMode.Utc)
|
||||
);
|
||||
|
||||
var modifiedUtc = context.Attribute(part.PartDefinition.Name, "ModifiedUtc");
|
||||
if (modifiedUtc != null) {
|
||||
part.ModifiedUtc = XmlConvert.ToDateTime(modifiedUtc, XmlDateTimeSerializationMode.Utc);
|
||||
}
|
||||
context.ImportAttribute(part.PartDefinition.Name, "PublishedUtc", publishedUtc =>
|
||||
part.PublishedUtc = XmlConvert.ToDateTime(publishedUtc, XmlDateTimeSerializationMode.Utc)
|
||||
);
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "ModifiedUtc", modifiedUtc =>
|
||||
part.ModifiedUtc = XmlConvert.ToDateTime(modifiedUtc, XmlDateTimeSerializationMode.Utc)
|
||||
);
|
||||
}
|
||||
|
||||
protected override void Exporting(CommonPart part, ExportContentContext context) {
|
||||
|
||||
@@ -15,10 +15,14 @@ namespace Orchard.Core.Common.Drivers {
|
||||
}
|
||||
|
||||
protected override void Importing(IdentityPart part, ContentManagement.Handlers.ImportContentContext context) {
|
||||
var identity = context.Attribute(part.PartDefinition.Name, "Identifier");
|
||||
if (identity != null) {
|
||||
part.Identifier = identity;
|
||||
// Don't do anything if the tag is not specified.
|
||||
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "Identifier", identity =>
|
||||
part.Identifier = identity
|
||||
);
|
||||
}
|
||||
|
||||
protected override void Exporting(IdentityPart part, ContentManagement.Handlers.ExportContentContext context) {
|
||||
|
||||
@@ -82,6 +82,11 @@ namespace Orchard.Core.Containers.Drivers {
|
||||
}
|
||||
|
||||
protected override void Importing(ContainablePart part, ImportContentContext context) {
|
||||
// Don't do anything if the tag is not specified.
|
||||
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "Position", s => part.Position = XmlConvert.ToInt32(s));
|
||||
}
|
||||
|
||||
|
||||
@@ -129,12 +129,16 @@ namespace Orchard.Core.Containers.Drivers {
|
||||
}
|
||||
|
||||
protected override void Importing(ContainerPart part, ImportContentContext context) {
|
||||
var itemContentType = context.Attribute(part.PartDefinition.Name, "ItemContentTypes");
|
||||
if (itemContentType != null) {
|
||||
// Don't do anything if the tag is not specified.
|
||||
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "ItemContentTypes", itemContentType => {
|
||||
if (_contentDefinitionManager.GetTypeDefinition(itemContentType) != null) {
|
||||
part.Record.ItemContentTypes = itemContentType;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "ItemsShown", s => part.ItemsShown = XmlConvert.ToBoolean(s));
|
||||
context.ImportAttribute(part.PartDefinition.Name, "Paginated", s => part.Paginated = XmlConvert.ToBoolean(s));
|
||||
|
||||
@@ -81,23 +81,25 @@ namespace Orchard.Core.Containers.Drivers {
|
||||
}
|
||||
|
||||
protected override void Importing(ContainerWidgetPart part, ImportContentContext context) {
|
||||
var containerIdentity = context.Attribute(part.PartDefinition.Name, "Container");
|
||||
if (containerIdentity != null) {
|
||||
// Don't do anything if the tag is not specified.
|
||||
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "Container", containerIdentity => {
|
||||
var container = context.GetItemFromSession(containerIdentity);
|
||||
if (container != null) {
|
||||
part.Record.ContainerId = container.Id;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
var pageSize = context.Attribute(part.PartDefinition.Name, "PageSize");
|
||||
if (pageSize != null) {
|
||||
part.Record.PageSize = Convert.ToInt32(pageSize);
|
||||
}
|
||||
context.ImportAttribute(part.PartDefinition.Name, "PageSize", pageSize =>
|
||||
part.Record.PageSize = Convert.ToInt32(pageSize)
|
||||
);
|
||||
|
||||
var filterByValue = context.Attribute(part.PartDefinition.Name, "FilterByValue");
|
||||
if (filterByValue != null) {
|
||||
part.Record.FilterByValue = filterByValue;
|
||||
}
|
||||
context.ImportAttribute(part.PartDefinition.Name, "FilterByValue", filterByValue =>
|
||||
part.Record.FilterByValue = filterByValue
|
||||
);
|
||||
}
|
||||
|
||||
protected override void Exporting(ContainerWidgetPart part, ExportContentContext context) {
|
||||
|
||||
@@ -24,20 +24,22 @@ namespace Orchard.Core.Containers.Drivers {
|
||||
}
|
||||
|
||||
protected override void Importing(CustomPropertiesPart part, ImportContentContext context) {
|
||||
var customOne = context.Attribute(part.PartDefinition.Name, "CustomOne");
|
||||
if (customOne != null) {
|
||||
part.Record.CustomOne = customOne;
|
||||
// Don't do anything if the tag is not specified.
|
||||
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
var customTwo = context.Attribute(part.PartDefinition.Name, "CustomTwo");
|
||||
if (customTwo != null) {
|
||||
part.Record.CustomTwo = customTwo;
|
||||
}
|
||||
context.ImportAttribute(part.PartDefinition.Name, "CustomOne", customOne =>
|
||||
part.Record.CustomOne = customOne
|
||||
);
|
||||
|
||||
var customThree = context.Attribute(part.PartDefinition.Name, "CustomThree");
|
||||
if (customThree != null) {
|
||||
part.Record.CustomThree = customThree;
|
||||
}
|
||||
context.ImportAttribute(part.PartDefinition.Name, "CustomTwo", customTwo =>
|
||||
part.Record.CustomTwo = customTwo
|
||||
);
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "CustomThree", customThree =>
|
||||
part.Record.CustomThree = customThree
|
||||
);
|
||||
}
|
||||
|
||||
protected override void Exporting(CustomPropertiesPart part, ExportContentContext context) {
|
||||
|
||||
@@ -4,9 +4,8 @@
|
||||
@{
|
||||
ContentItem contentItem = Model.ContentItem;
|
||||
var typeDisplayName = contentItem.TypeDefinition.DisplayName ?? contentItem.ContentType.CamelFriendly();
|
||||
var pageTitle = T("New {0}", typeDisplayName);
|
||||
|
||||
Layout.Title = (string)pageTitle.Text;
|
||||
Layout.Title = T("New {0}", Html.Raw(typeDisplayName)).Text;
|
||||
}
|
||||
|
||||
@using (Html.BeginFormAntiForgeryPost(Url.Action("Create", new { ReturnUrl = Request.QueryString["ReturnUrl"] }), FormMethod.Post, new { enctype = "multipart/form-data" })) {
|
||||
|
||||
@@ -4,13 +4,13 @@
|
||||
var pageTitle = T("Manage Content");
|
||||
var createLinkText = T("Create New Content");
|
||||
if (!string.IsNullOrWhiteSpace(typeDisplayName)) {
|
||||
pageTitle = T("Manage {0} Content", typeDisplayName);
|
||||
createLinkText = T("Create New {0}", typeDisplayName);
|
||||
pageTitle = T("Manage {0} Content", Html.Raw(typeDisplayName));
|
||||
createLinkText = T("Create New {0}", Html.Raw(typeDisplayName));
|
||||
}
|
||||
|
||||
IEnumerable<string> cultures = Model.Options.Cultures;
|
||||
|
||||
Layout.Title = pageTitle;
|
||||
Layout.Title = pageTitle.Text;
|
||||
}
|
||||
|
||||
<div class="manage">
|
||||
|
||||
@@ -71,20 +71,22 @@ namespace Orchard.Core.Navigation.Drivers {
|
||||
}
|
||||
|
||||
protected override void Importing(AdminMenuPart part, ContentManagement.Handlers.ImportContentContext context) {
|
||||
var adminMenuText = context.Attribute(part.PartDefinition.Name, "AdminMenuText");
|
||||
if (adminMenuText != null) {
|
||||
part.AdminMenuText = adminMenuText;
|
||||
// Don't do anything if the tag is not specified.
|
||||
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
var position = context.Attribute(part.PartDefinition.Name, "AdminMenuPosition");
|
||||
if (position != null) {
|
||||
part.AdminMenuPosition = position;
|
||||
}
|
||||
context.ImportAttribute(part.PartDefinition.Name, "AdminMenuText", adminMenuText =>
|
||||
part.AdminMenuText = adminMenuText
|
||||
);
|
||||
|
||||
var onAdminMenu = context.Attribute(part.PartDefinition.Name, "OnAdminMenu");
|
||||
if (onAdminMenu != null) {
|
||||
part.OnAdminMenu = Convert.ToBoolean(onAdminMenu);
|
||||
}
|
||||
context.ImportAttribute(part.PartDefinition.Name, "AdminMenuPosition", position =>
|
||||
part.AdminMenuPosition = position
|
||||
);
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "OnAdminMenu", onAdminMenu =>
|
||||
part.OnAdminMenu = Convert.ToBoolean(onAdminMenu)
|
||||
);
|
||||
}
|
||||
|
||||
protected override void Exporting(AdminMenuPart part, ContentManagement.Handlers.ExportContentContext context) {
|
||||
|
||||
@@ -35,10 +35,14 @@ namespace Orchard.Core.Navigation.Drivers {
|
||||
}
|
||||
|
||||
protected override void Importing(MenuItemPart part, ContentManagement.Handlers.ImportContentContext context) {
|
||||
var url = context.Attribute(part.PartDefinition.Name, "Url");
|
||||
if (url != null) {
|
||||
part.Url = url;
|
||||
// Don't do anything if the tag is not specified.
|
||||
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "Url", url =>
|
||||
part.Url = url
|
||||
);
|
||||
}
|
||||
|
||||
protected override void Exporting(MenuItemPart part, ContentManagement.Handlers.ExportContentContext context) {
|
||||
|
||||
@@ -80,23 +80,25 @@ namespace Orchard.Core.Navigation.Drivers {
|
||||
}
|
||||
|
||||
protected override void Importing(MenuPart part, ContentManagement.Handlers.ImportContentContext context) {
|
||||
var menuText = context.Attribute(part.PartDefinition.Name, "MenuText");
|
||||
if (menuText != null) {
|
||||
part.MenuText = menuText;
|
||||
// Don't do anything if the tag is not specified.
|
||||
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
var position = context.Attribute(part.PartDefinition.Name, "MenuPosition");
|
||||
if (position != null) {
|
||||
part.MenuPosition = position;
|
||||
}
|
||||
context.ImportAttribute(part.PartDefinition.Name, "MenuText", menuText =>
|
||||
part.MenuText = menuText
|
||||
);
|
||||
|
||||
var menuIdentity = context.Attribute(part.PartDefinition.Name, "Menu");
|
||||
if (menuIdentity != null) {
|
||||
context.ImportAttribute(part.PartDefinition.Name, "MenuPosition", position =>
|
||||
part.MenuPosition = position
|
||||
);
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "Menu", menuIdentity => {
|
||||
var menu = context.GetItemFromSession(menuIdentity);
|
||||
if (menu != null) {
|
||||
part.Menu = menu;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
protected override void Exporting(MenuPart part, ContentManagement.Handlers.ExportContentContext context) {
|
||||
|
||||
@@ -190,6 +190,11 @@ namespace Orchard.Core.Navigation.Drivers {
|
||||
}
|
||||
|
||||
protected override void Importing(MenuWidgetPart part, ImportContentContext context) {
|
||||
// Don't do anything if the tag is not specified.
|
||||
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "StartLevel", x => part.StartLevel = Convert.ToInt32(x));
|
||||
context.ImportAttribute(part.PartDefinition.Name, "Levels", x => part.Levels = Convert.ToInt32(x));
|
||||
context.ImportAttribute(part.PartDefinition.Name, "Breadcrumb", x => part.Breadcrumb = Convert.ToBoolean(x));
|
||||
|
||||
@@ -37,13 +37,12 @@ namespace Orchard.Core.Navigation.Drivers {
|
||||
}
|
||||
|
||||
protected override void Importing(ShapeMenuItemPart part, ImportContentContext context) {
|
||||
IfNotNull(context.Attribute(part.PartDefinition.Name, "ShapeType"), x => part.ShapeType = x);
|
||||
}
|
||||
|
||||
private static void IfNotNull<T>(T value, Action<T> then) where T : class {
|
||||
if(value != null) {
|
||||
then(value);
|
||||
// Don't do anything if the tag is not specified.
|
||||
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "ShapeType", x => part.ShapeType = x);
|
||||
}
|
||||
|
||||
protected override void Exporting(ShapeMenuItemPart part, ExportContentContext context) {
|
||||
|
||||
@@ -116,12 +116,16 @@ namespace Orchard.Core.Settings.Drivers {
|
||||
}
|
||||
|
||||
protected override void Importing(SiteSettingsPart part, ContentManagement.Handlers.ImportContentContext context) {
|
||||
var supportedCultures = context.Attribute(part.PartDefinition.Name, "SupportedCultures");
|
||||
if (supportedCultures != null) {
|
||||
// Don't do anything if the tag is not specified.
|
||||
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "SupportedCultures", supportedCultures => {
|
||||
foreach (var culture in supportedCultures.Split(';')) {
|
||||
_cultureManager.AddCulture(culture);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -39,10 +39,14 @@ namespace Orchard.Core.Title.Drivers {
|
||||
}
|
||||
|
||||
protected override void Importing(TitlePart part, ImportContentContext context) {
|
||||
var title = context.Attribute(part.PartDefinition.Name, "Title");
|
||||
if (title != null) {
|
||||
part.Title = title;
|
||||
// Don't do anything if the tag is not specified.
|
||||
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
context.ImportAttribute(part.PartDefinition.Name, "Title", title =>
|
||||
part.Title = title
|
||||
);
|
||||
}
|
||||
|
||||
protected override void Exporting(TitlePart part, ExportContentContext context) {
|
||||
|
||||
@@ -2,8 +2,6 @@
|
||||
<configuration>
|
||||
<configSections>
|
||||
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
|
||||
<remove name="host"/>
|
||||
<remove name="pages"/>
|
||||
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false"/>
|
||||
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false"/>
|
||||
</sectionGroup>
|
||||
@@ -39,6 +37,10 @@
|
||||
<runtime>
|
||||
<!-- NOTE: These binding redirects have no runtime effect; they are only here to avoid build warnings. -->
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30AD4FE6B2A6AEED" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="NHibernate" publicKeyToken="AA95F207798DFDB4" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.0.4000" newVersion="4.0.0.4000"/>
|
||||
|
||||
@@ -29,7 +29,8 @@ namespace Lucene.Services {
|
||||
|
||||
public static readonly Version LuceneVersion = Version.LUCENE_29;
|
||||
public static readonly DateTime DefaultMinDateTime = new DateTime(1980, 1, 1);
|
||||
|
||||
public static readonly int BatchSize = BooleanQuery.MaxClauseCount;
|
||||
|
||||
public LuceneIndexProvider(
|
||||
IAppDataFolder appDataFolder,
|
||||
ShellSettings shellSettings,
|
||||
@@ -152,17 +153,25 @@ namespace Lucene.Services {
|
||||
}
|
||||
|
||||
using (var writer = new IndexWriter(GetDirectory(indexName), _analyzerProvider.GetAnalyzer(indexName), false, IndexWriter.MaxFieldLength.UNLIMITED)) {
|
||||
var query = new BooleanQuery();
|
||||
// Process documents by batch as there is a max number of terms a query can contain (1024 by default).
|
||||
var pageCount = documentIds.Count() / BatchSize + 1;
|
||||
for (int page = 0; page < pageCount; page++) {
|
||||
var query = new BooleanQuery();
|
||||
|
||||
try {
|
||||
foreach (var id in documentIds) {
|
||||
query.Add(new BooleanClause(new TermQuery(new Term("id", id.ToString(CultureInfo.InvariantCulture))), Occur.SHOULD));
|
||||
try {
|
||||
var batch = documentIds
|
||||
.Skip(page * BatchSize)
|
||||
.Take(BatchSize);
|
||||
|
||||
foreach (var id in batch) {
|
||||
query.Add(new BooleanClause(new TermQuery(new Term("id", id.ToString(CultureInfo.InvariantCulture))), Occur.SHOULD));
|
||||
}
|
||||
|
||||
writer.DeleteDocuments(query);
|
||||
}
|
||||
catch (Exception ex) {
|
||||
Logger.Error(ex, "An unexpected error occured while removing the documents [{0}] from the index [{1}].", String.Join(", ", documentIds), indexName);
|
||||
}
|
||||
|
||||
writer.DeleteDocuments(query);
|
||||
}
|
||||
catch (Exception ex) {
|
||||
Logger.Error(ex, "An unexpected error occured while removing the documents [{0}] from the index [{1}].", String.Join(", ", documentIds), indexName);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,8 +2,6 @@
|
||||
<configuration>
|
||||
<configSections>
|
||||
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
|
||||
<remove name="host"/>
|
||||
<remove name="pages"/>
|
||||
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false"/>
|
||||
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false"/>
|
||||
</sectionGroup>
|
||||
@@ -37,6 +35,10 @@
|
||||
<runtime>
|
||||
<!-- NOTE: These binding redirects have no runtime effect; they are only here to avoid build warnings. -->
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30AD4FE6B2A6AEED" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="NHibernate" publicKeyToken="AA95F207798DFDB4" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.0.4000" newVersion="4.0.0.4000"/>
|
||||
|
||||
@@ -2,8 +2,6 @@
|
||||
<configuration>
|
||||
<configSections>
|
||||
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
|
||||
<remove name="host"/>
|
||||
<remove name="pages"/>
|
||||
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false"/>
|
||||
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false"/>
|
||||
</sectionGroup>
|
||||
@@ -39,6 +37,10 @@
|
||||
<runtime>
|
||||
<!-- NOTE: These binding redirects have no runtime effect; they are only here to avoid build warnings. -->
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30AD4FE6B2A6AEED" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="NHibernate" publicKeyToken="AA95F207798DFDB4" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.0.4000" newVersion="4.0.0.4000"/>
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using Orchard.Alias.Implementation.Holder;
|
||||
using Orchard.Alias.Implementation.Storage;
|
||||
using Orchard.Environment;
|
||||
using Orchard.Tasks;
|
||||
using Orchard.Logging;
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
@Html.Link(url, Href("~/" + urlPrefix + "/" + url))
|
||||
</td>
|
||||
<td>
|
||||
@Html.ActionLink(T("Edit").Text, "Edit", new { path = alias.Path == String.Empty ? "/" : alias.Path })
|
||||
@Html.ActionLink(T("Edit").Text, "Edit", new { path = alias.Path == String.Empty ? "/" : alias.Path })@T(" | ")
|
||||
@Html.ActionLink(T("Delete").Text, "Delete", new { path = alias.Path }, new { itemprop = "UnsafeUrl RemoveUrl" })
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -2,8 +2,6 @@
|
||||
<configuration>
|
||||
<configSections>
|
||||
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
|
||||
<remove name="host"/>
|
||||
<remove name="pages"/>
|
||||
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false"/>
|
||||
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false"/>
|
||||
</sectionGroup>
|
||||
@@ -39,6 +37,10 @@
|
||||
<runtime>
|
||||
<!-- NOTE: These binding redirects have no runtime effect; they are only here to avoid build warnings. -->
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30AD4FE6B2A6AEED" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="NHibernate" publicKeyToken="AA95F207798DFDB4" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.0.4000" newVersion="4.0.0.4000"/>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user