Saeed Hashemi
Saeed Hashemi

Reputation: 1024

Check session value in header of page

How can I check session value in header and choose stylesheet link?

<head>
     // if session["culture"] equal EN choose  
     // <link href="/CSS/MenuEN.css" rel="stylesheet" type="text/css" />
     // else choose
     // <link href="/CSS/MenuFA.css" rel="stylesheet" type="text/css" />
</head>

Upvotes: 1

Views: 598

Answers (5)

user1868413
user1868413

Reputation:

I use this code.

HtmlLink link = new HtmlLink();
    if (Session["Culture"].ToString() == "EN")
        link.Href = "/CSS/MenuEN.css";
    else if (Session["Culture"].ToString() == "FA")
        link.Href = "/CSS/MenuFA.css";
    link.Attributes.Add("rel", "stylesheet");
    link.Attributes.Add("type", "text/css");
    this.head.Controls.Add(link);

Upvotes: 1

CooL i3oY
CooL i3oY

Reputation: 800

Try this :

<head>
    <asp:PlaceHolder ID="MyLink" runat="server">
        <link href="/CSS/Menu<%= Session["Culture"].ToString() %>.css" rel="stylesheet" type="text/css" />
    </asp:PlaceHolder>
</head>

Upvotes: 2

Paul Walls
Paul Walls

Reputation: 6044

I'd probably do something like this...

<head>
<asp:PlaceHolder id="linkEN" runat="server">
<link href="/CSS/MenuEN.css" rel="stylesheet" type="text/css" />
</asp:PlaceHolder>
<asp:PlaceHolder id="linkFA" Visible="false" runat="server">
<link href="/CSS/MainFA.css" rel="stylesheet" type="text/css" />
</asp:PlaceHolder>
</head>

Then in your code...

protected PlaceHolder linkEN;
protected PlaceHolder linkFA;

void Page_Load(object sender, EventArgs e)
{
        if (Session["culture"] != "EN")
        {
            linkEN.Visible = false;
            linkFA.Visible = true;
        }
}

Upvotes: 1

Saeed Hashemi
Saeed Hashemi

Reputation: 1024

I use that

HtmlLink link = new HtmlLink();
    if (Session["Culture"].ToString() == "EN")
        link.Href = "/CSS/MenuEN.css";
    else if (Session["Culture"].ToString() == "FA")
        link.Href = "/CSS/MenuFA.css";
    link.Attributes.Add("rel", "stylesheet");
    link.Attributes.Add("type", "text/css");
    this.head.Controls.Add(link);

Upvotes: 1

yogi
yogi

Reputation: 19619

Try this

protected void Page_Load(object sender, EventArgs e)
{
        HtmlLink link = new HtmlLink();
        link.Attributes.Add("rel", "stylesheet");
        link.Attributes.Add("type", "text/css");
        if (Session["culture"] == "EN")
            link.Href = "/CSS/MenuEN.css";
        else
            link.Href = "/CSS/MainFA.css";
        this.Header.Controls.Add(link);
}

OR this

<head>
<%= (Session["culture"] == "EN") ? 
    "<link href='/CSS/MenuEN.css' rel='stylesheet' type='text/css' />" : 
    "<link href='/CSS/MainFA.css' rel='stylesheet' type='text/css' />"
%>
</head>

Upvotes: 1

Related Questions