サーバー側に単純な int を保存しようとしています。その後、すべてのユーザーがログインして更新できます。これは簡単な作業だと思い、設定デザイナーを使用しようとしましたが、アプリケーション設定は読み取り専用であるため、スコープを「アプリケーション」から「ユーザー」に変更できませんでした。
変数を XML ファイルに保存して変更できることはわかっていますが、もっと簡単な方法が必要だと思いました。
ユーザー プロファイルを使用しようとしましたが、うまくいきませんか? (Context.Profile も使用しました。)
<profile>
<providers>
<clear/>
<add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/"/>
</providers>
<properties>
<add name="FilmNumber" type="int" allowAnonymous="true" defaultValue="2"/>
</properties>
</profile>
コード:
//********Get poster Number*******
int LastPosterNumber=0;
LastPosterNumber = (int)HttpContext.Current.Profile.GetPropertyValue("FilmNumber");
string strFileName;
strFileName = FileField.PostedFile.FileName;
string c = (LastPosterNumber + 1).ToString();
string dirPath = System.Web.HttpContext.Current.Server.MapPath("~") + "/Images/FilmPosters/" + c + ".jpg";
FileField.PostedFile.SaveAs(dirPath);
//******Save new poster number*******
HttpContext.Current.Profile.SetPropertyValue("FilmNumber", int.Parse(c));
HttpContext.Current.Profile.Save();