PDA

View Full Version : چطور به Profile.fullname از web.config قبل از فرم لود دسترسي پيدا كنم ؟



Afshin160
سه شنبه 20 مرداد 1388, 09:07 صبح
سلام به تمام دوستان :

يه سوال : من يه web.config يه صورت زير دارم :


<?xml version="1.0"?>
<configuration>
<appSettings />
<connectionStrings />
<system.web >
<pages theme="a1">
</pages>
<anonymousIdentification enabled="true "/>
<profile >
<properties>
<add name ="fullname" defaultValue ="anonymous" allowAnonymous ="true" />
</properties>
</profile>

</system.web>

</configuration>

حال مي خواستم قبل از فرم لود به Profile.fullname دسترسي داشته باشم .
البته شايان ذكر است بايد از كد زير استفاده شود .




protected void Page_PreInit(object sender, EventArgs e)
{
txtname.text = Profile.fullname;
}

اما اين كد در vs.net 2008 و مدل web appliction جواب نميده ولي من قبلا" همچين كدي را در
vs.net 2005 مدل website ديده بودم .
پيغام خطا ميده :

The name 'Profile' does not exist in the current context


حال سوالم اينه اولا" چطور به Profile.fullname از web.config دسترسي پيدا كنم ؟
ثانيا" چرا كد بالا در vs.net 2005 مدل website جواب ميده ولي در vs.net 2008 و مدل web appliction جواب نميده ؟

با سپاس

_babak_
سه شنبه 20 مرداد 1388, 13:04 عصر
ببخشيد من اطلا" نمي دونم
protected void Page_PreInit(object sender, EventArgs e)
اي چيه .. !! چكار مي كنه ؟

Afshin160
سه شنبه 20 مرداد 1388, 18:08 عصر
سلام ...
دوستان كسي نمي دونه چطور به Profile.fullname از web.config دسترسي پيدا كنم؟؟؟؟!!!...

Afshin160
چهارشنبه 21 مرداد 1388, 13:59 عصر
سلام ..
من همچنان منتظرم ....

Afshin160
پنج شنبه 22 مرداد 1388, 09:42 صبح
سلام ...
يكي از دوستانم لينك زير را معرفي كرد..
http://code.msdn.microsoft.com/WebProfileBuilder

http://www.codeplex.com/WebProfile/WorkItem/List.aspx

http://www.codeplex.com/WebProfile


http://weblogs.asp.net/joewrobel/archive/2008/02/03/web-profile-builder-for-web-application-projects.aspx



كسي ميتونه توضيح بيشتري بده ..؟

Afshin160
پنج شنبه 22 مرداد 1388, 14:32 عصر
دوباره سلام : ...
فكر نمي كردم اين سوال اينقدر سخت باشه كه كسي ندونه !!!!!.........
شايد هم من بد توضيح دادم ...........؟ هان
به هر حال من دارم سعي مي كنم راهي ساده براي تغيير runtime theme سايت پيدا كنم .و اين سوالم هم پيرو همون مطلب بود .
البته با اسكريتي كردن كد هاي با مشيه اين كارو كرد ولي به دونبال راهي بهتر هستم ....

به هر حال مثل اينكه بايد از خير اين سوال در اين فروم بگذرم ... ولي چيزي كه برام جالبه اين بود كه مديران ارشد سايت يا خيلي گزينشي (!!!!!......؟؟؟) به سولات جواب ميدهند كه البته لطف مي كنند .و يا فقط به فكر پاك سازي و دسته بندي مطالب هستن ...

هر وقت به نتيجه بهتري رسيدم در همين تاپيك براتون ميزارم .
موفق و پيروز باشيد.

Afshin160
یک شنبه 25 مرداد 1388, 12:41 عصر
Dynamic Themes - style sheet
ِ


سلام...
اول بكم كه من تقريبا" تاز كارم و يه درد دلي بكنم بعد ميرم سر جواب سوال خودم ....
نمي دونم چرا بعضي از اساتيد اولا" بصورت گزينشي پاسخ بعضي از سوالات را ميدن ؟
ثانيا" سوال من خيلي سخت نبود ولي كسي مبادرت به پاسخش نكرد ..! شايد دليلش وجود چنين بحثي در سر فصل تدريس بعضي از آموزشگاها باشه ... البته شايد( و خوب باز شدن اون مبحث جذاب در يه forum آزاد ....)كلا" زماني سوال ها كمي جنبه تجاري(يا گاهآ حرفه اي ) پيدا كنه كسي زياد به اون جواب نمي ده ....

بي خيال .. به هر حال به راهي پيدا كردم البته زياد چنگي به ددل نمي زنه ولي خوب كار راه بندازه..
خوب اول يه پروژه web application ‌باز مي كنيم و web.config اون را به صورت زير تغيير مي دهيم.



<?xml version="1.0"?>

<configuration>
<appSettings />
<connectionStrings />
<system.web >
<pages theme="a1">
</pages>
<anonymousIdentification enabled="true "/>

<profile>
<properties>
<add name ="fullname" defaultValue ="anonymous" allowAnonymous ="true" />
<add name="Mytheme" defaultValue ="a1" allowAnonymous ="true " />
</properties>

</profile>

</system.web>

</configuration>

حال درpage Default كنترلهاي image , label1 و



<a href="wfSettings.aspx">wfSettings.aspx</a>
را قرار ميدهيم و در نهايت دستورات به شكل زير ميشود :
Default .aspx




<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebTBA2._Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server" >




protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Label1.Text = Profile.fullname;

}
}
protected void Page_PreInit(object sender, EventArgs e)
{
Page.Theme = Profile.Mytheme;
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Page1 </title>
</head>
<body>
<form id="form1" runat="server">
<div>
<br />
<br />
<asp:Image ID="Image1" runat="server" />
<br />
<br />
<asp:Button ID="Button1" runat="server" Text="Button" />
<br /> <br />
welcom ... <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<br /> <br />

<a href="wfSettings.aspx">wfSettings.aspx</a>
<br />
<br />
</div>
</form>
</body>
</html>

و يه page ديگر به نام wfSettings به پروژه اضافه مي كنيم ....
و page wfSettings.aspx هم به شكل زير مي شود :




<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="wfSettings.aspx.cs" Inherits="WebTBA2.WebForm1" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

protected void Button1_Click(object sender, EventArgs e)
{
Profile.fullname = TextBox1.Text.ToString();
Profile.Mytheme = DropDownList1.SelectedValue;
Response.Redirect("Default.aspx");
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
TextBox1.Text = Profile.fullname;
DropDownList1.Items.FindByValue(Profile.Mytheme).S elected = true;

}
}


</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<p>
Enter full name :


<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<br/><br/><br/><br/>

choose theme
<asp:DropDownList ID="DropDownList1" runat="server" Height="46px"
Width="73px" Font-Bold="True" Font-Size="Medium">
<asp:ListItem>a1</asp:ListItem>
<asp:ListItem>a2</asp:ListItem>
</asp:DropDownList>

<br/><br/>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="save"
Width="61px" />


</p>
</div>
</form>
</body>
</html>


و دو تا theme a1 , a2 هم يه پروژه اضافه مي كنيم .
در زير هم يه تمونه مثال هم گذاشتم ...

موفق باشيد .

------------------------------------------------------------------------------
در تاريخ 28 -05- 88 به روز شد.
تاپيك زير هم چند سوال و جواب پيرامون همين موضوع است .

http://www.barnamenevis.org/forum/showthread.php?t=174327

CATGAUDY
یک شنبه 25 مرداد 1388, 12:56 عصر
اينو خوب اومدي :


نمي دونم چرا بعضي از اساتيد اولا" بصورت گزينشي پاسخ بعضي از سوالات را ميدن ؟

_afshin_
چهارشنبه 25 شهریور 1388, 10:22 صبح
سلام . 1-درمورد اين مطلب كه گفتيد ...
نمي دونم چرا بعضي از اساتيد اولا" بصورت گزينشي پاسخ بعضي از سوالات را ميدن ؟خوب به هر حال فكر مي كنم كه يه جورايي بايد كلاسهاي سايت برنامه نويس هم ....!خوب اين هم از اهداف اين سايته ديگه .. كه البته معقول هم هست.
2- آيا راه ديگه اي غير از web config هم براي عوض كردن them site هست ؟
اگه هست ميشه يه راهنمايي بديد ...

m.hamidreza
سه شنبه 07 مهر 1388, 19:01 عصر
Afshin160 (http://www.barnamenevis.org/forum/member.php?u=45528)@:
من به شما پیغام خصوصی نمیتونم بدم ظاهرا امکان دریافت پیغام رو غیرفعال کردید. یه دفعه هم فکر کنم قبلا یه چیزی گفتید من نتونستم جواب بدم...
امکان تشکر در تک پست ها هم وجود داره! در اون پست هم میشه تشکر کرد. شما خودت از خودت که نمیتونی تشکر کنی بخاطر همین دکمه نمایش داده نمیشه.
موفق باشید.

پ.ن: با پوزش از برادر بهروز خان جهت بالاآوردن این تاپیک. آقا مخلصیما :چشمک: