Мне нужно сделать несколько вещей в БД, и я бы предпочел иметь методы расширения в отдельном файле, а не все в файле cshtml.
Но я получаю следующую ошибку:
Сообщение об ошибке компилятора: CS0120: ссылка на объект требуется для нестатического поля, метода или свойства 'UserOperations.GetFirstName (string)'
Что указывает мне на эту строку:
Line 165: <li><a href="@Href("myaccount/account.cshtml")">Hi, @UserOperations.GetFirstName(WebSecurity.CurrentUserId)</a></li>
Используемый код: (CSHTML)
@if(WebSecurity.IsAuthenticated)
{
<li><a href="@Href("myaccount/account.cshtml")">Hi, @UserOperations.GetFirstName(WebSecurity.CurrentUserId.ToString())</a></li>
}
else
{
<li><a href="@Href("myaccount/Login.cshtml")">My Account</a>
<ul>
<li><a href="@Href("myaccount/Login.cshtml")">Sign In</a></li>
<li><a href="@Href("myaccount/Register.cshtml")" title="It's FREE!">Create Account</a></li>
</ul>
</li>
}
И ...: (UserOperations.CS)
using System;
using WebMatrix.WebData;
using WebMatrix.Data;
using System.Collections.Generic;
using System.Web;
/// <summary>
/// User & Database-based operations in this file only.
/// </summary>
public class UserOperations
{
public string GetFirstName(string CurrentUserID)
{
WebSecurity.InitializeDatabaseConnection("eee", "www", "www", "www", true);
var database = Database.Open("OSF");
var SelectQueryString = "SELECT FirstName FROM UserProfile WHERE FirstName = " + CurrentUserID;
var result = database.Query(SelectQueryString);
return result.ToString();
}
}
Iне понимаю, что пытается сказать ошибка.Я все время так делаю в приложениях C # Desktop, я не понимаю, как или , что Я делаю неправильно?Может кто-нибудь помочь, пожалуйста?
Спасибо!