كيفية تعيين تسمية نص ASP.NET لاسم المستخدم الحالي
-
05-07-2019 - |
سؤال
وأنا أحاول أن تعيين اسم المستخدم إلى التسمية، ولكن ليس متأكدا مما إذا كان هذا هو بناء الجملة الصحيح - منتديات إضافة ترميز التالية يولد خطأ تحليل
<asp:Label ID="userNameLabel" runat="server"
Text='<%= User.Identity.Name.Split(new char[]{'\\'})[1] %>' />
والمشكلة الرئيسية هنا هي أن، أنا لا أعرف ما <%= %>
أو <%# %>
تسمى، وبالتالي لا يمكن جوجل / بنج.
ويمكن للشخص لي نقطة في الاتجاه الصحيح؟
المحلول
وأنا شخصيا أود أن تعيين نص التسمية في التعليمات البرمجية خلف في Page_Load
userNameLabel.Text = User.Identity.Name.Split('\\')[1];
وسوف تحتاج إلى التأكد من أن هناك \ في اسم المستخدم أو سوف تحصل على خطأ.
نصائح أخرى
إذا كنت تحاول تحويل User.Identity.Name إلى زوجين من السلاسل، فإنه يبدو تغيير شار [] لسلسلة []، وينبغي أن تفعل خدعة.
وبناء الجملة <٪ #٪> هو لربط البيانات. وسوف تعمل على ما تريد القيام به، وسوف تحتاج للتأكد من أن DataBind عناصر () ويسمى.
<asp:Label ID="userNameLabel" runat="server" Text='<%# User.Identity.Name.Split('\\')[1] %>' />
وتشمل خيارات أخرى:
وتعيين الخاصية نص من الحدث Page_Load.
void Page_Load(object sender, EventArgs e)
{
userNameLabel.Text = User.Identity.Name.Split('\\')[1];
}
والتفاف التسمية حول الكتابة.
<asp:Label ID="userNameLabel" runat="server"><%= User.Identity.Name.Split('\\')[1] %></asp:Label>
وهذا يعمل أيضا.
<asp:Label ID="userNameLabel" runat="server">
<%= User.Identity.Name %>
</asp:Label>