ΠšΠΎΠΌΠΌΠΈΡ‚ 52779de8 создал ΠΏΠΎ Π°Π²Ρ‚ΠΎΡ€Ρƒ NorthRebel's avatar NorthRebel
ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ Ρ„Π°ΠΉΠ»ΠΎΠ²

πŸ”¨ Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Ρ„Π»Π°Π³ добавлСния пСрСноса ΠΏΠ΅Ρ€Π΅Π΄ вставкой Π½ΠΎΠ²ΠΎΠ³ΠΎ значСния ΠΊ...

πŸ”¨ Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Ρ„Π»Π°Π³ добавлСния пСрСноса ΠΏΠ΅Ρ€Π΅Π΄ вставкой Π½ΠΎΠ²ΠΎΠ³ΠΎ значСния ΠΊ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ Π² ModelPropertyPutViewModel.
- πŸ”– v3.6
Π²Π»Π°Π΄Π΅Π»Π΅Ρ† 8e561f79
......@@ -63,5 +63,21 @@ namespace Monq.Models.Abstractions.Tests.Helpers
Assert.Equal(initialStr, updatedStr);
}
[Fact(DisplayName = "ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° добавлСния пСрСноса строки ΠΏΡ€ΠΈ ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΠΈ старого ΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ значСния строкового Ρ‚ΠΈΠΏΠ°.")]
public void ShouldProperlyAppendWithNewLine()
{
var initialStr = "test1";
var putModel = new ModelPropertyPutViewModel
{
Value = "test",
AppendWithNewLine = true,
Behavior = ModelPropertyPutBehavior.Append
};
var updatedStr = ModelHelper.Update(initialStr, putModel);
Assert.Equal(initialStr + Environment.NewLine + putModel.Value, updatedStr);
}
}
}
\ НСт Π½ΠΎΠ²ΠΎΠΉ строки Π² ΠΊΠΎΠ½Ρ†Π΅ Ρ„Π°ΠΉΠ»Π°
......@@ -33,9 +33,21 @@ namespace Monq.Models.Abstractions.Helpers
return value.Behavior switch
{
ModelPropertyPutBehavior.Override => value.Value,
ModelPropertyPutBehavior.Append => targetProp + value.Value,
ModelPropertyPutBehavior.Append when !value.AppendWithNewLine => targetProp + value.Value,
ModelPropertyPutBehavior.Append when value.AppendWithNewLine => AppendLine(targetProp, value.Value),
_ => throw new ArgumentOutOfRangeException()
};
}
static string AppendLine(string targetProp, string newValue)
{
if (string.IsNullOrWhiteSpace(targetProp))
return targetProp + newValue;
if (targetProp.EndsWith(Environment.NewLine) || newValue.StartsWith(Environment.NewLine))
return targetProp + newValue;
return targetProp + Environment.NewLine + newValue;
}
}
}
\ НСт Π½ΠΎΠ²ΠΎΠΉ строки Π² ΠΊΠΎΠ½Ρ†Π΅ Ρ„Π°ΠΉΠ»Π°
......@@ -18,6 +18,14 @@ namespace Monq.Models.Abstractions
/// </summary>
public bool CheckExistingSubstring { get; set; } = false;
/// <summary>
/// Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ пСрСнос Π½Π° Π½ΠΎΠ²ΡƒΡŽ строку ΠΏΠ΅Ρ€Π΅Π΄ ставкой Π½ΠΎΠ²ΠΎΠ³ΠΎ значСния ΠΊ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ.
/// </summary>
/// <remarks>
/// Π€Π»Π°Π³ ΠΈΠΌΠ΅Π΅Ρ‚ силу, Ссли <see cref="Behavior"/> = <see cref="ModelPropertyPutBehavior.Append"/>.
/// </remarks>
public bool AppendWithNewLine { get; set; } = false;
/// <summary>
/// ПовСдСниС ΠΏΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ свойства сущности.
/// </summary>
......
ο»Ώ<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Version>3.5</Version>
<Version>3.6</Version>
<VersionSuffix>$(VersionSuffix)</VersionSuffix>
<Version Condition=" '$(VersionSuffix)' != '' ">$(Version)-$(VersionSuffix)</Version>
<TargetFramework>netstandard2.0</TargetFramework>
......
ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Markdown
0% ΠΈΠ»ΠΈ .
You are about to add 0 people to the discussion. Proceed with caution.
Π‘Π½Π°Ρ‡Π°Π»Π° Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ этого сообщСния!
ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΈΠ»ΠΈ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ