有没有一种方法可以在Asp.net MVC中为视图元素实现状态设计模式?

时间:2019-07-09 14:03:12

标签: c# asp.net-mvc design-patterns kendo-ui

我对.Net MVC还是很陌生,并且我目前正在开发一个需要在某些时候绘制一些图表的应用程序。这些图表可以具有不同的类型(饼图,条形图,折线图等)。这些图表由一个meta类定义,其实例存储在我的数据库中(名称,数据源url [实际数字信息来自API],类型)。当前类型存储为字符串标记,并且在我的视图中有一个开关确定要调用的绘图功能(drawPieChart,drawBarChart等)。

这让我想起了很多应该简化状态设计模式的情况(在这种情况下,“状态”将是图表类型)。因此,我开始在ViewModel中实现我的类,但是当涉及到实际的draw()函数时,我陷入了困境:

    class PieChart : IChartType
    {
        public void draw(Chart ctx)
        {
            // how to draw stuff in the view ?
        }
    }

    public class Chart
    {
        private IChartType chartType { get; set; }
        public void draw()
        {
            this.chartType.draw(this);
        }
    }

    public interface IChartType{
        void draw(Chart ctx);
    }

我目前正在视图中使用KendoUI for Jquery绘制东西。

所以我的问题是,有没有办法实现draw()函数? (我相信我不应该在模型中实现任何功能,对吧?)

谢谢您的帮助!

0 个答案:

没有答案