代码之家  ›  专栏  ›  技术社区  ›  Yannis

ASP。NET MVC:表单值在第一篇帖子后被缓存

  •  1
  • Yannis  · 技术社区  · 16 年前

    <form action="/post/save" method="post">
        <label>Type here whatever you want, quick and without thinking</label>
        <%= Html.TextArea("Body", new { @class = "post", rows="3" })%>
        <input type="submit" value="Publish" class="big_button red" />
    </form>
    

    [AcceptVerbs(HttpVerbs.Post)]
        public ActionResult Save(ArticleView form)
        {
            Article article = _ArticleViewMapper.Map(form);
    
            article.UpdatedBy = "guest";
            article.CreatedBy = "guest";
            article.UpdatedOn = DateTime.Now;
            article.CreatedOn = DateTime.Now;
    
            CMSFactory.CMS.ArticleRepository.Save(article);
    
            return RedirectToAction("Index", "Home");
        }
    

            // This only initialized the Castle IOC container
            DependencyRegistrat.Init();
    
            DependencyRegistrat.GetDefaultContainer().RegisterAll<IController>(typeof(HomeController).Assembly, ComponentLifecycle.Transient);
    
            ControllerBuilder.Current.SetControllerFactory(new MyControllerFactory(DependencyRegistrat.GetDefaultContainer()));
    

        protected override IController GetControllerInstance(Type controllerType)
        {
            Check.IsNotNull(controllerType, "The given controller type was null, but must be provided");
    
            return (IController) _Container.Resolve(controllerType);
        }
    
        public override void ReleaseController(IController controller) 
        {
            var disposable = controller as IDisposable;
    
            if (disposable != null) disposable.Dispose();
    
            _Container.Release(controller);
        }
    }
    
    3 回复  |  直到 16 年前
        1
  •  3
  •   Çağdaş Tekin    16 年前

    ModelState Html.TextArea()

    ModelState.Clear(); Save

    ModelState["Body"].Value = new ValueProviderResult("", "", CultureInfo.CurrentCulture);

        2
  •  0
  •   Robert Harvey    16 年前

    如果你正在创建一篇新文章,你应该新建一个article对象。

        3
  •  -1
  •   Yannis    16 年前

    这(有效):

    _Container.AddComponentLifeStyle(typeof(K).FullName.ToLower(), typeof(K), (lifecycle);
    

    与此不同(它不起作用)

    _Container.AddComponentLifeStyle<I, K>(lifecycle);