找回密码
 立即注册

QQ登录

只需一步,快速开始

yuhuang

注册会员

2

主题

11

帖子

25

积分

注册会员

积分
25
最新发帖
yuhuang
注册会员   /  发表于:2019-9-4 10:23  /   查看:5780  /  回复:13
目前WebDesigner_MVC(Core) demo里的数据源是本地的json数据,我想用代码连接本地数据库试试,请问能提供相关demo吗?

14 个回复

倒序浏览
yuhuang
注册会员   /  发表于:2019-9-4 12:01:32
沙发
AR13在线设计器中怎么添加自己的数据源?
回复 使用道具 举报
KearneyKang讲师达人认证 悬赏达人认证
超级版主   /  发表于:2019-9-4 12:01:59
板凳
你是想进行动态数据源绑定还是,目前Web端在线的本地文件都是需要进行一个对应的转换的,具体如下:https://gcdn.grapecity.com.cn/fo ... &extra=page%3D2
回复 使用道具 举报
yuhuang
注册会员   /  发表于:2019-9-4 14:27:23
地板
按照示例运行后,数据库里字段能加载出来,但数据加载不出来
给的示例中XmlJsonData.DataSource.ConnectionProperties.ConnectString没有赋值
需要赋值吗?如何赋值呢?
回复 使用道具 举报
KearneyKang讲师达人认证 悬赏达人认证
超级版主   /  发表于:2019-9-4 14:32:37
5#
demo中使用的是动态数据源的绑定用的Datatable这里不需要赋值
回复 使用道具 举报
yuhuang
注册会员   /  发表于:2019-9-4 14:46:54
6#
按照demo运行报错:Rendering error:No data has been set. Please specify either a DataSet or a DataView to use

我返回的json:

    {
        "DataSet": {
            "Name": "DataSet1",
            "Query": {
                "CommandText": null,
                "DataSourceName": "DataSource1"
            },
            "Fields": [{
                "Name": "AutoID",
                "DataField": "AutoID",
                "FBz": "AutoID"
            }, {
                "Name": "arkLotNo",
                "DataField": "arkLotNo",
                "FBz": "arkLotNo"
            }, {
                "Name": "arkLotHeight",
                "DataField": "arkLotHeight",
                "FBz": "arkLotHeight"
            }, {
                "Name": "arkLotWidth",
                "DataField": "arkLotWidth",
                "FBz": "arkLotWidth"
            }, {
                "Name": "arkLotX",
                "DataField": "ParkLotX",
                "FBz": "ParkLotX"
            }, {
                "Name": "ParkLotY",
                "DataField": "ParkLotY",
                "FBz": "ParkLotY"
            }, {
                "Name": "ParkLotAngle",
                "DataField": "ParkLotAngle",
                "FBz": "ParkLotAngle"
            }, {
                "Name": "ParkLotName",
                "DataField": "ParkLotName",
                "FBz": "ParkLotName"
            }, {
                "Name": "MapNo",
                "DataField": "MapNo",
                "FBz": "MapNo"
            }, {
                "Name": "AreaNo",
                "DataField": "AreaNo",
                "FBz": "AreaNo"
            }, {
                "Name": "ProbeNo",
                "DataField": "ProbeNo",
                "FBz": "ProbeNo"
            }, {
                "Name": "PlateNo",
                "DataField": "PlateNo",
                "FBz": "PlateNo"
            }, {
                "Name": "GroupNo",
                "DataField": "GroupNo",
                "FBz": "GroupNo"
            }]
        },
        "DataSource": {
            "Name": "DataSource1",
            "ConnectionProperties": {
                "ConnectString": null,
                "DataProvider": "DATASET"
            }
        }
    }
麻烦帮我看看,谢谢了
回复 使用道具 举报
yuhuang
注册会员   /  发表于:2019-9-4 14:49:22
7#
版本是AR13
回复 使用道具 举报
KearneyKang讲师达人认证 悬赏达人认证
超级版主   /  发表于:2019-9-4 14:53:44
8#
本帖最后由 KearneyKang 于 2019-9-4 14:59 编辑

您好,动态绑定数据源后台只能是Datatable、Dataset 或者Object的类型,
链接本地数据库的话,你说的 是直接连接本地数据库,那么你可以把你的本身数据给转换成类JSON的样式,具体操作如下:https://gcdn.grapecity.com.cn/fo ... &extra=page%3D2

回复 使用道具 举报
yuhuang
注册会员   /  发表于:2019-9-4 15:16:52
9#

我使用的是WebDesigner_MVC(Core) demo这个项目

1、把你个的demo添加进来,也是报同样的错误rendering error:No data has been set. Please specify either a DataSet or a DataView to use

2、我返回的是object类型,为了直观,给你看的json的
var ds = GetDataSet(connectionString, strSql);

        ArData arData = new ArData();
        arData.DataSet = new ArDataSet();
        arData.DataSet.Name = "DataSet1";
        arData.DataSet.Query = new ArQuery();
        arData.DataSet.Query.DataSourceName = "DataSource1";
        //arData.DataSet.Query.CommandText = "$.Data[*]";
        arData.DataSet.Fields = new ArField[ds.Tables[0].Columns.Count];
        foreach (DataColumn drc in ds.Tables[0].Columns)
        {
            arData.DataSet.Fields[drc.Ordinal] = new ArField(drc.ColumnName, drc.ColumnName, drc.DataType.ToString());
        }
        arData.DataSource = new ArDataSource();
        arData.DataSource.Name = "DataSource1";
        arData.DataSource.ConnectionProperties = new ArConnectionProperties();
        //arData.DataSource.ConnectionProperties.ConnectString = JsonConvert.SerializeObject(ds);
        arData.DataSource.ConnectionProperties.DataProvider = "DATASET";
        //string jsonData = JsonConvert.SerializeObject(arData);

        return arData;
回复 使用道具 举报
yuhuang
注册会员   /  发表于:2019-9-4 15:18:33
10#
本帖最后由 yuhuang 于 2019-9-4 15:22 编辑

好的,我再试试
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部