Skip to content

Instantly share code, notes, and snippets.

@mnaoumov
Created February 24, 2016 11:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mnaoumov/996bb38b4fbb5de33104 to your computer and use it in GitHub Desktop.
Save mnaoumov/996bb38b4fbb5de33104 to your computer and use it in GitHub Desktop.
$ErrorActionPreference = "Stop"
Set-StrictMode -Version Latest
function Replace-ViewState([string] $content)
{
if (-not ($content.Contains("ViewState[")))
{
return $content
}
$newContent = $content
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] == null\)
ViewState\["\k<ViewStateName>"\] = (?<FallbackValue>.+?);(
)?
return \(\k<Type>\) ?ViewState\["\k<ViewStateName>"\];
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
(?<SetModifier>[\w ]+?)?set \{ ViewState\["(?<ViewStateName>\w+?)"\] = value; \}
get
\{
if \(ViewState\["\k<ViewStateName>"\] == null\)
ViewState\["\k<ViewStateName>"\] = (?<FallbackValue>.+?);(
)?
return \(\k<Type>\) ?ViewState\["\k<ViewStateName>"\];
\}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return ViewState\["(?<ViewStateName>\w+?)"\] as \k<Type>; \} (?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ (?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \} get \{ return ViewState\["(?<ViewStateName>\w+?)"\] as \k<Type>; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return ViewState\["(?<ViewStateName>\w+?)"\] as \k<Type>; \} (?<SetModifier>[\w ]+?)?set \{ ViewState\.Add\("\k<ViewStateName>", value\); \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get \{ return ViewState\["(?<ViewStateName>\w+?)"\] as \k<Type>; \}
(?<SetModifier>[\w ]+?)?set
\{
ViewState\["\k<ViewStateName>"\] = value;(?<Setter>(
( .+)?)+)
\}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$Setter = $m.Groups["Setter"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name}
{
get { return ViewState.Get<${Type}>(); }
${SetModifier}set
{
ViewState.Set(value);${Setter}
}
}
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name}
{
get { return ViewState.Get<${Type}>(); }
${SetModifier}set
{
ViewState.Set(value);${Setter}
}
}
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return \(\k<Type>\) ?\(ViewState\["(?<ViewStateName>\w+?)"\] \?\? (?<FallbackValue>.+?)\); \} (?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return ViewState\["(?<ViewStateName>\w+?)"\] as \k<Type> \?\? (?<FallbackValue>.+?); \} (?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) bool (?<Name>\w+?)
\{
get
\{
(object|var) (?<Variable>\w+?) = ViewState\["(?<ViewStateName>\w+?)"\];
return \k<Variable> != null \&\& \(bool\) \k<Variable>;
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = "bool"
$FallbackValue = "false"
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return \(\k<Type>\) ?ViewState\["(?<ViewStateName>\w+?)"\]; \} (?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get \{ return \(\k<Type>\) ?\(ViewState\["(?<ViewStateName>\w+?)"\] \?\? (?<FallbackValue>.+?)\); \}
(?<SetModifier>[\w ]+?)?set
\{
ViewState\["\k<ViewStateName>"\] = value;(?<Setter>(
( .+)?)+)
\}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$Setter = $m.Groups["Setter"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name}
{
get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); }
${SetModifier}set
{
ViewState.Set(value);${Setter}
}
}
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name}
{
get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); }
${SetModifier}set
{
ViewState.Set(value);${Setter}
}
}
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(\(ViewState\["(?<ViewStateName>\w+?)"\] as \k<Type>\?\) == null\)
ViewState\["\k<ViewStateName>"\] = (?<FallbackValue>.+?);(
)?
return \(\k<Type>\) ?ViewState\["\k<ViewStateName>"\];
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return \(\k<Type>\) ?\(ViewState\[nameof\(\k<Name>\)\] \?\? (?<FallbackValue>.+?)\); \} (?<SetModifier>[\w ]+?)?set \{ ViewState\[nameof\(\k<Name>\)\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $Name
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return ViewState\[nameof\(\k<Name>\)\] as \k<Type>; \} (?<SetModifier>[\w ]+?)?set \{ ViewState\[nameof\(\k<Name>\)\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $Name
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return ViewState\["(?<ViewStateName>\w+?)"\] == null \? (?<FallbackValue>.+?) : \((?<OtherType>[\w <>,.?\[\]]+?)\) ?ViewState\["\k<ViewStateName>"\]; \} (?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] == null\)
ViewState\["\k<ViewStateName>"\] = (?<FallbackValue>.+?);(
)?
return ViewState\["\k<ViewStateName>"\] as \k<Type>;
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return ViewState\["(?<ViewStateName>\w+?)"\] != null \? \(\k<Type>\) ?ViewState\["\k<ViewStateName>"\] : (?<FallbackValue>.+?); \} (?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] == null\)
ViewState\["\k<ViewStateName>"\] = (?<FallbackValue>.+?);(
)?
return \(\k<Type>\) ?ViewState\["\k<ViewStateName>"\];
\}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} => ViewState.Get<${Type}>(fallbackValue: ${FallbackValue});
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} => ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName);
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] == null\)
ViewState\["\k<ViewStateName>"\] = (?<FallbackValue>.+?);(
)?
return \(\k<Type>\) ?ViewState\["\k<ViewStateName>"\];
\}
(?<SetModifier>[\w ]+?)?set
\{(?<Setter>(
( .+)?)+)
ViewState\["\k<ViewStateName>"\] = value;
\}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$Setter = $m.Groups["Setter"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name}
{
get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); }
${SetModifier}set
{${Setter}
ViewState.Set(value);
}
}
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name}
{
get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); }
${SetModifier}set
{${Setter}
ViewState.Set(value);
}
}
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] == null\)
ViewState\["\k<ViewStateName>"\] = (?<FallbackValue>.+?);(
)?
return \(\k<Type>\) ?ViewState\["\k<ViewStateName>"\];
\}
(?<SetModifier>[\w ]+?)?set
\{
if \(ViewState != null\)
ViewState\["\k<ViewStateName>"\] = value;
\}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) bool (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] == null\)
return false;
return \(bool\) ViewState\["\k<ViewStateName>"\];
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = "bool"
$FallbackValue = "false"
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) string (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] == null\)
ViewState\["\k<ViewStateName>"\] = (?<FallbackValue>.+?);(
)?
return ViewState\["\k<ViewStateName>"\]\.ToString\(\);
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = "string"
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
(var|object) (?<Variable>\w+?) = ViewState\["(?<ViewStateName>\w+?)"\];
return \k<Variable> != null \? \(\k<Type>\) ?\k<Variable> : (?<FallbackValue>.+?);
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) string (?<Name>\w+?)
\{
get
\{
if \(string.IsNullOrEmpty\(\(string\) ViewState\["(?<ViewStateName>\w+?)"\]\)\)
ViewState\["\k<ViewStateName>"\] = (?<FallbackValue>.+?);(
)?
return \(string\) ViewState\["\k<ViewStateName>"\]\;
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = "string"
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] == null\)
ViewState\["\k<ViewStateName>"\] = (?<FallbackValue>.+?);(
)?
return \(\k<Type>\) ?Enum\.Parse\(typeof\(\k<Type>\), ViewState\["\k<ViewStateName>"\]\.ToString\(\)\);
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) bool (?<Name>\w+?) \{ get \{ return ViewState\["(?<ViewStateName>\w+?)"\] != null && \(bool\) ViewState\["\k<ViewStateName>"\]; \} (?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = "bool"
$FallbackValue = "false"
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return ViewState\[nameof\(\k<Name>\)\] as \k<Type>\? \?\? (?<FallbackValue>.+?); \} (?<SetModifier>[\w ]+?)?set \{ ViewState\[nameof\(\k<Name>\)\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $Name
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] == null\)
ViewState\["\k<ViewStateName>"\] = (?<FallbackValue>.+?);(
)?
return \((?<OtherType>[\w <>,.?\[\]]+?)\) ViewState\["\k<ViewStateName>"\];
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(ViewState\[nameof\(\k<Name>\)\] == null\)
ViewState\[nameof\(\k<Name>\)\] = (?<FallbackValue>.+?);(
)?
return \(\k<Type>\) ?ViewState\[nameof\(\k<Name>\)\];
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\[nameof\(\k<Name>\)\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $Name
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] == null\)
return (?<FallbackValue>.+?);( //.*)?(
)?
return \((?<OtherType>[\w <>,.?\[\]]+?)\) ?ViewState\["\k<ViewStateName>"\];
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) string (?<Name>\w+?)
\{
get
\{
return ViewState\["(?<ViewStateName>\w+?)"\] == null \? (?<FallbackValue>.+?) :[\s\n]*ViewState\["\k<ViewStateName>"\]\.ToString\(\);
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = "string"
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] == null\)
ViewState\["\k<ViewStateName>"\] = (?<FallbackValue>.+?)\.ToString\(\);(
)?
return \(\k<Type>\) ?Enum\.Parse\(typeof\(\k<Type>\), ViewState\["\k<ViewStateName>"\] as string\);
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value\.ToString\(\); \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] == null\)
return (?<FallbackValue>.+?);(
)?
return ViewState\["\k<ViewStateName>"\]\.ToString\(\);
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return ViewState\["(?<ViewStateName>\w+?)"\] != null \? ViewState\["\k<ViewStateName>"\]\.ToString\(\) : (?<FallbackValue>.+?); \} (?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return ViewState\["(?<ViewStateName>\w+?)"\] == null \? (?<FallbackValue>.+?) : \(ViewState\["\k<ViewStateName>"\]\)\.ToString\(\); \} (?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return ViewState\["(?<ViewStateName>\w+?)"\] == null \? (?<FallbackValue>.+?) : \(ViewState\["\k<ViewStateName>"\]\)\.ToString\(\); \} (?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return ViewState\["(?<ViewStateName>\w+?)"\]\?\.ToString\(\) \?\? (?<FallbackValue>.+?); \} (?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
return ViewState\["(?<ViewStateName>\w+?)"\] == null
\? (?<FallbackValue>.+?)
: ViewState\["\k<ViewStateName>"\]\.ToString\(\);
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] == null\)
ViewState\["\k<ViewStateName>"\] = (?<FallbackValue>.+?);(
)?
return ?ViewState\["\k<ViewStateName>"\];
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] == null\)
ViewState\["\k<ViewStateName>"\] = (?<FallbackValue>.+?);(
)?
return \(\k<Type>\) ?ViewState\["\k<ViewStateName>"\];
\}
(?<SetModifier>[\w ]+?)?set
\{
ViewState\["\k<ViewStateName>"\] = value;(?<Setter>(
( .+)?)+?)
\}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
$Setter = $m.Groups["Setter"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name}
{
get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); }
${SetModifier}set
{
ViewState.Set(value);${Setter}
}
}
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name}
{
get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); }
${SetModifier}set
{
ViewState.Set(value, propertyName: ${Name}ViewStateName);${Setter}
}
}
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?) \{ get \{ return ViewState\["(?<ViewStateName>\w+?)"\] is \k<Type> \? \(\k<Type>\) ViewState\["\k<ViewStateName>"\] : (?<FallbackValue>.+?); \} (?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \} \}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
$newContent = [Regex]::Replace($newContent, @'
(?<Modifier>[\w ]+?) (?<Type>[\w <>,.?\[\]]+?) (?<Name>\w+?)
\{
get
\{
if \(ViewState\["(?<ViewStateName>\w+?)"\] != null\)
return \(\k<Type>\) ?ViewState\["\k<ViewStateName>"\];
return (?<FallbackValue>.+?);( //.*)?
\}
(?<SetModifier>[\w ]+?)?set \{ ViewState\["\k<ViewStateName>"\] = value; \}
\}
'@, {
param ($m)
$Name = $m.Groups["Name"].Value
$ViewStateName = $m.Groups["ViewStateName"].Value
$Modifier = $m.Groups["Modifier"].Value
$Type = $m.Groups["Type"].Value
$FallbackValue = $m.Groups["FallbackValue"].Value
$SetModifier = $m.Groups["SetModifier"].Value
if ($Name -ceq $ViewStateName)
{
@"
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}); } ${SetModifier}set { ViewState.Set(value); } }
"@
}
else
{
@"
private const string ${Name}ViewStateName = "${ViewStateName}";
${Modifier} ${Type} ${Name} { get { return ViewState.Get<${Type}>(fallbackValue: ${FallbackValue}, propertyName: ${Name}ViewStateName); } ${SetModifier}set { ViewState.Set(value, propertyName: ${Name}ViewStateName); } }
"@
}
})
if (($newContent -cne $content) -and (!$newContent.Contains("using Volia;")))
{
$newContent = $newContent -creplace @'
namespace
'@, @'
using Volia;
namespace
'@
}
return $newContent;
}
$files = dir c:\dev\risc -Include *.cs -Exclude *.designer.cs -Recurse | ? { $f = $_.FullName; ($f -notlike "*\bin\*") -and ($f -notlike "*\obj\*") -and ($f -notlike "*\AjaxControlToolkit\*") }
$i = 0;
$files | % {
$i++;
$p = $i / $files.Count * 100;
Write-Progress -PercentComplete $p -Activity "$i from $($files.Count): $($_.FullName)"
if ($_.Length -eq 0)
{
return;
}
$content = [System.IO.File]::ReadAllText($_.FullName)
$newContent = Replace-ViewState $content
if ($newContent -cne $content)
{
Write-Verbose -Message "Saving $($_.FullName)"
$sr = New-Object System.IO.StreamReader($_.FullName, $true)
[char[]] $buffer = new-object char[] 3
$sr.Read($buffer, 0, 3)
$encoding = $sr.CurrentEncoding
$sr.Close()
[System.IO.File]::WriteAllText($_.FullName, $newContent, $encoding)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment