データベース内のすべてのワインの完全なカウントをビューモデルに追加するために、いくつかのコードを変更しました。更新されたすべてのファイルをサーバーにコピーすると、次のエラーが発生し続けます。
「vf2.ViewModels.MyAccountViewModel」には「DBWineCount」の定義が含まれておらず、「vf2.ViewModels.MyAccountViewModel」タイプの最初の引数を受け入れる拡張メソッド「DBWineCount」が見つかりませんでした(usingディレクティブまたはアセンブリ参照がありませんか? ?)
これは私の開発ボックスで正常に機能し、ファイルは同じです。web.configファイルを編集して強制的にコンパイルしましたが、まだこの問題があります。代わりにViewBagを使用しようとすると、スローおよびエラーは発生しませんが、空白の値が返されます。ここで何が起こっているのでしょうか?以下は私のコードサンプルです:
namespace vf2.ViewModels
{
public class MyAccountViewModel
{
public DistributorUser DistributorUser { get; set; }
public ProducerUser ProducerUser { get; set; }
public RestaurantUser RestaurantUser { get; set; }
public UserObj UserObj { get; set; }
[Display(Name="Email")]
public string MembershipEmail { get; set; }
public string GetFullName()
{
return this.UserObj.FirstName + " " + this.UserObj.LastName;
}
public string sInstitutionTab { get; set; }
public string DBWineCount { get; set; }
}
}
[Authorize]
public ActionResult MyAccount()
{
MyAccountViewModel myAccount = new MyAccountViewModel();
MembershipUser muCurrent = Membership.GetUser(true);
muCurrent = Membership.GetUser(true);
myAccount.UserObj = db.UserObjs.Find(muCurrent.ProviderUserKey);
myAccount.MembershipEmail = muCurrent.Email;
int iDocCount = 0;
int iRevCount = 0;
if (myAccount.UserObj != null)
{
myAccount.DBWineCount = string.Format("{0:n0}",db.Wines.Count());
switch ((UserTypesEnum)myAccount.UserObj.UserTypeID)
{
case UserTypesEnum.Producer:
myAccount.ProducerUser = db.ProducerUsers.Find(muCurrent.ProviderUserKey);
myAccount.sInstitutionTab = "My Producer";
myAccount.ProducerUser.Producer.Wines.ToList().ForEach(w => iDocCount += w.Docs.Count);
myAccount.ProducerUser.Producer.Wines.ToList().ForEach(w => iRevCount += w.Reviews.Count);
<I cut the rest out because it is pretty long>
<div class="lightbox" id="gettingStarted" style="text-align:center;">
<a href="#" class="ui-icon ui-icon-circle-close closer"></a>
<h3 style="margin-top:0px;">Getting Started</h3>
<br />
To get started using the site, search useing the searchbox above or the search
tab on the left.
<br />From there you'll have access to all @Model.DBWineCount wines in our database.
<br />
</div>