view Agendas/trunk/src/Agendas.Web/EditorDefaultExtensions.cs @ 182:beeb48ddb44a

Warning con los errores que se guarden en el log del track de un evento durante una notificación (twitter, calendar, blog)
author nelopauselli
date Mon, 08 Aug 2011 21:57:10 -0300
parents 23aaf98b8377
children
line wrap: on
line source

using System.Web;
using System.Web.Mvc;

namespace AltNetHispano.Agendas.Web
{
    public static class EditorDefaultExtensions
    {
        public static HtmlString GetTitleForModel<T>(this HtmlHelper<T> helper)
        {
            return new HtmlString(SearchResource(helper.ViewData.Model.GetType().Name + "Title"));
        }

        public static HtmlString GetDescriptionForModel<T>(this HtmlHelper<T> helper)
        {
            return new HtmlString(SearchResource(helper.ViewData.Model.GetType().Name + "Description"));
        }

        public static HtmlString GetLegendForModel<T>(this HtmlHelper<T> helper)
        {
            return new HtmlString(SearchResource(helper.ViewData.Model.GetType().Name + "Legend"));
        }

        private static string SearchResource(string resourceName)
        {
            string displayName = null;
            var resourceType = typeof(Resources.Properties.LayoutResources);
            var prop = resourceType.GetProperty(resourceName);
            if (prop != null)
            {
                var value = prop.GetValue(resourceType, null);
                displayName = value != null ? value.ToString() : resourceName;
            }
            return displayName ?? string.Empty;
        }
    }
}