Я будую сайт ASP.NET MVC, де я використовую Lucene.Net для пошукових запитів. Тут я поставив запитання про те, як правильно структурувати використання Lucene.Net у додатку ASP.NET MVC, і мені сказали, що найкращим методом є оголошення мого " IndexWriterяк" public static, щоб його можна було повторно використовувати.
Ось код, який знаходиться вгорі мого SearchController:
public static string IndexLocation = Server.MapPath("~/lucene");
public static Lucene.Net.Analysis.Standard.StandardAnalyzer analyzer = new Lucene.Net.Analysis.Standard.StandardAnalyzer();
public static IndexWriter writer = new IndexWriter(IndexLocation,analyzer);
Як writerє статичним, IndexLocationтакож повинен бути статичним. Таким чином, компілятор видає мені таку помилку для Server.MapPath():
Посилання на об'єкт потрібно для нестатичного поля, методу чи властивості 'System.Web.Mvc.Controller.Server.get'
Чи існує спосіб використання Server.MapPath () або щось подібне зі статичного поля ? Як я можу виправити цю помилку?