当前位置: 首页 > Web前端 > HTML

当.Net撞上BI可视化,这3种“套路”你必须知道

时间:2023-03-27 23:25:11 HTML

.Net打BI可视化,这三个“套路”你一定要知道!这次客户用的是.Net项目,直接做BI大屏太复杂,所以想直接集成使用BI数据可视化分析大屏。那么,这次我们将从Wyn入手,介绍如何在.Net环境下集成BI仪表盘数据可视化大屏。说到这里,有些同学对BI仪表盘数据可视化大屏还不是很了解,先给大家介绍一下吧。BIDashboard数据可视化大屏无论你现在在做什么项目,都会遇到甲方要求一个炫酷漂亮的数据仪表盘,用于数据可视化和自助式数据分析。这个看板是BI仪表盘数据可视化的大屏幕。这块板有多重要?企业内部信息共享、外部行业交流、会议现场展示,适用于你能想到的所有场合。同时,对看板的需求也变得常态化。大屏”。因此,BI可视化仪表盘设计会出现在我们现在和未来做的每一个信息化项目中。这里我们简单的按照大屏的作用和作用进行分层:第一层:简单可视化方式的堆叠,比如使用Echarts.js或其他图表库,将静态数据以可视化的方式展现,形成静态自适应数据可视化“报表”;第二层:数据实时更新,关联真实业务数据,实时展示业务数据使用可视化图表代替静态数据;第三层:数据的自助式分析包括数据建模、数据处理、可视化展示和自助式数据分析操作,才是真正的商业智能数据分析。实现BI大屏,整体开发工作量主要根据我们的实际需求来确定,本次我们以WynEnterprise为例,演示如何实现app.NetCore项目中BI可视化的应用集成。最终实现项目的屏幕适配、多页仪表盘、数据自动刷新、3D动画效果等效果。这些效果可直接应用于智慧园区、智慧车间、医疗健康、电力能源、校园安防、数字化指挥中心等场景。..NetCore项目中BI集成方式介绍.NetCore项目中集成BI主要有3种方式。下面将通过具体的例子来介绍这些不同的集成方式。Div集成Div集成主要用于将业务系统中的仪表盘、报表、数据源和数据集以原生的方式集成。这种集成方式的核心是获取文档的DIV元素和对应的值,然后写入到自己的网页代码中。注意,在DIV集成之前,需要对Wyn系统进行跨域配置,允许跨域请求。例如:示例代码下面是集成的示例代码:下面的数字对应图中的数字,分别说明:(1)具体部署系统的实际域名地址;(2)Dashboard插件在系统中的版本号;(3)UserToken,请确保使用的Token有足够的权限(比如查看仪表盘,比如集成设计器,需要创建仪表盘权限)。(4)仪表盘ID,用于集成单个仪表盘文档。如果你集成一个空的设计器,你不需要它,只需删除这一行。(5)集成设计器参考代码。(6)集成单个仪表盘文档的参考代码。URL集成.NetCore项目中最常用的集成方式是URL集成。这种集成方式的核心是设置一个带有参数(QueryString)的URL(URL)作为业务系统中某个菜单链接的目标地址,或者作为业务系统页面中某个iframe元素的src属性值.URL集成的核心是生成集成报表或仪表盘的完整URL。以仪表盘为例:(1)在新窗口中打开仪表盘选择仪表盘,点击页面右上角的新建窗口按钮,在新的浏览器窗口中打开仪表盘。(2)复制浏览器地址栏中的网址,将仪表盘的网址复制粘贴到记事本中备用。(3)获取accesstoken,进入系统后台管理\>生成token。输入token信息,点击“GenerateToken”按钮生成用户名的token字符串;单击右侧的“获取令牌”按钮以复制令牌。这里需要注意生成token时使用的用户名,要有要访问的报表或dashboard的查看权限。例如,专门为项目创建一个名为guest的用户,然后创建一个名为“integrationuser”的角色,并将guest用户添加到该角色中。然后设置要集成的报表或仪表板的权限,允许“集成用户”[只读]。(4)将复制的token粘贴到步骤(3)的URL末尾,使用&token=连接,得到的URL字符串如下:http://localhost:51980/dashboards/view/5d5cafe6e98abc00018ff4e5?theme=default&lng=zh-CN&token=0b77ebfe232bff06248ce245c24af6aa84010b5f747ef41e605b08ae310a6fed(5)使用带有token的URL字符串,将URL字符串设置为业务系统页面文件中iframe的src属性或超链接的href属性。例如:\API集成需要BI系统支持GraphQLAPI,这样几乎所有的界面操作都可以通过调用API来完成,例如在portal页面展开某个分类下的文档列表时,通过浏览器调试面板You可以看到实际的GraphQLAPI调用。操作方法中所有API调用的详情请参考:https://wyn.grapecity.com.cn/WynApiDemo/API调用示例,如下图所示:与RESTAPI不同,GraphQLAPI不需要为不同的对象操作提供不同的URL。通过统一的URL调用不同对象的不同操作(http://localhost:51980/api/graphql);区别在于提交的数据不同。对于提交数据的格式和内容,可以使用浏览器调试功能在接口操作中查看网络交互(Network),然后查看具体的请求头信息(Headers)。API返回的内容可以通过查看网络交互中的Response部分获取。在浏览器中打开http://localhost:51980/graphiql网页(注意网址末尾graph和ql之间有一个字母i),可以随时调试API,如图下图:接下来,我们将演示如何在MVC项目中使用ASP.NETCore实现数据可视化功能。ASP.NetCoreMVC项目集成BI数据可视化安装Wyn后,使用localhost:51980进入门户管理网站。整个数据可视化使用的仪表盘、设计器、管理中心、数据处理模块都是在线的B/S端,我们直接安装即可。打开VisualStudio以创建新的ASP.NETMVC项目或将新视图或HTML文件添加到现有项目。其他我们在上面介绍了ASP.NetCoreMVC项目和.NetCore项目中的集成方式,但是我们想要更好的高效解决实际项目中的问题,还需要一些更高级的集成功能。综合权限管理BI仪表板涉及企业核心业务数据信息,因此用户权限是一个关键功能。因此,用户权限管理也需要区别对待。我们以大家最熟悉的安全令牌为例:使用固定令牌集成时,相当于以固定用户的身份查看报表内容。如果想让业务系统的不同用户根据不同的数据权限看到不同的报表内容,需要以业务系统当前用户登录,获取不同的token,然后查看文档内容。当业务系统的当前登录用户传递给BI系统,以该用户身份登录的过程就是用户身份集成。用户身份集成有两种方法:(1)使用URL参数传递用户信息;(2)单点登录集成。前者更容易,后者更安??全。QueryString利用URL的QueryString方法直接传递用户信息,这也是我们可能会用到的一个常用功能。方法如下:(1)在设计报表时定义一个隐藏参数。示例:参数名称为oauuser。设置参数隐藏的目的是防止用户手动输入其他用户的用户名查看报表内容。(2)在综合报告内容的URL中加入用户身份参数。示例:&dp={"oauuser":["张三"]}。与其他参数一样,该参数的内容需要进行URL编码,结果如下:%dp=%7b%22oauuser%22%3a%5b%22ZhangSan%22%5d%7d注:(1)这里的参数名(oauuser)必须和报表设计时定义的参数名完全一致,区分大小写。(2)该方法仍然使用固定的token进行集成,即在集成URL中,QueryString的token参数值仍然是固定的字符串。单点登录集成如果业务系统对安全性要求较高,可以在业务系统登录界面使用登录API实现单点登录集成,将获取到的token放在session变量中。当需要集成报表功能时,从session变量中取出token,拼接在集成的URL中。这样,业务系统的每个用户都是不同的token。从业务系统登录界面提取的用户登录信息为用户输入的业务系统用户名和密码。通常,BI系统的登录API是通过业务系统的用户账号调用的,需要与Wyn中的用户名和密码相同的账号。为了避免为每个用户创建多套账户密码,我们还可以编写一个自定义的安全提供程序。通过编写自定义的安全提供者,业务系统的用户在查看报表内容时,可以直接使用业务系统的账号登录,查看自己权限范围内的数据内容。写在最后:无论是.NetCore还是.NET5、6,项目整体都有强大的服务器资源做支撑,适合开发大并发、高性能的业务系统。如果实现了BI可视化大屏功能,现有市面上的工具已经很齐全了。当我们考虑在项目中加入这个【门面】功能时,可以考虑引用现成的工具,将开发资源集中在核心业务上,从而实现高效的跨平台项目。送货。