Variables
Just like in regular C# code, you can define variables in Razor, to store information for later use. If you are already inside a code-scope, e.g. inside an if-statement or another control structure, you can just define it straight away. If you're inside of a markup-scope, you can use a Razor code-block, as described in a previous article, to define your variable inside. Here's an example:
@{
string helloWorldMsg = "Hello, world!";
}
You can of course output it just as easily, either directly in the code block or outside of it, by referencing the name. Here's an example of it:
@{
string helloWorldMsg = "Hello, world!";
}
<div>
@helloWorldMsg
</div>
You can of course work with and manipulate your variables and apply logic to them, just like you would in C#:
@{
string helloWorldMsg = "Good day";
if(DateTime.Now.Hour > 17)
{
helloWorldMsg = "Good evening";
}
helloWorldMsg += ", world!";
helloWorldMsg = helloWorldMsg.ToUpper();
}
<div>
@helloWorldMsg
</div>
Summary
Declaring and using variables in Razor is just as easy as using them in your regular C# code. As you will see in later examples, it can be really powerful to have easy-access to variables in your markup.