예제 #1
0
        public void Init(System.Collections.Specialized.NameValueCollection createTag, string map, int index)
        {
            for (int i = 0; i < createTag.Count; i++) {
                switch (createTag.Keys[i]) {
                    case "Provider":
                        switch (createTag[i]) {
                            case "Procedure":
                                _dataBuilder = new Xy.Data.DataBuilders.ProcedureBuilder();
                                break;
                            case "Data":
                                _dataBuilder = new Xy.Data.DataBuilders.DataBuilder();
                                break;
                            case "Request":
                                _dataBuilder = new Xy.Data.DataBuilders.RequestBuilder();
                                break;
                            case "XML":
                                _dataBuilder = new Xy.Data.DataBuilders.XMLBuilder();
                                break;
                            default:
                                try {
                                    _dataBuilder = Runtime.Web.DataBuilderFactory.Get(createTag[i]);
                                } catch (NullReferenceException ex) {
                                    throw new Exception(string.Format("Cannot found data builder:{0}, please assign a correct provider.", createTag[i]));
                                }
                                if(_dataBuilder == null)
                                    throw new Exception(string.Format("Cannot found data builder:{0}, please assign a correct provider.", createTag[i]));
                                break;
                        }
                        break;
                    case "Xslt":
                        _xsltPath = createTag[i];
                        break;
                    case "XsltParameter":
                        _xsltParameter = createTag[i];
                        break;
                    case "EnableScript":
                        _enableScript = string.Compare(createTag[i], "true", true) == 0;
                        break;
                    case "EnableCode":
                        _enableCode = string.Compare(createTag[i], "true", true) == 0;
                        break;
                    case "EnableCache":
                        _enableCache = string.Compare(createTag[i], "true", true) == 0;
                        break;
                    case "Root":
                        _root = createTag[i];
                        break;
                    default:
                        _tagList.Add(createTag.Keys[i], createTag[i]);
                        break;

                }
            }
            _map = string.Concat(map, "DataControl", index);
            _isNeedData = string.IsNullOrEmpty(_xsltPath);
        }
예제 #2
0
        public void Init(System.Collections.Specialized.NameValueCollection createTag, string map, int index)
        {
            for (int i = 0; i < createTag.Count; i++)
            {
                switch (createTag.Keys[i])
                {
                case "Provider":
                    switch (createTag[i])
                    {
                    case "Procedure":
                        _dataBuilder = new Xy.Data.DataBuilders.ProcedureBuilder();
                        break;

                    case "Data":
                        _dataBuilder = new Xy.Data.DataBuilders.DataBuilder();
                        break;

                    case "Request":
                        _dataBuilder = new Xy.Data.DataBuilders.RequestBuilder();
                        break;

                    case "XML":
                        _dataBuilder = new Xy.Data.DataBuilders.XMLBuilder();
                        break;

                    default:
                        try {
                            _dataBuilder = Runtime.Web.DataBuilderFactory.Get(createTag[i]);
                        } catch (NullReferenceException ex) {
                            throw new Exception(string.Format("Cannot found data builder:{0}, please assign a correct provider.", createTag[i]));
                        }
                        if (_dataBuilder == null)
                        {
                            throw new Exception(string.Format("Cannot found data builder:{0}, please assign a correct provider.", createTag[i]));
                        }
                        break;
                    }
                    break;

                case "Xslt":
                    _xsltPath = createTag[i];
                    break;

                case "XsltParameter":
                    _xsltParameter = createTag[i];
                    break;

                case "EnableScript":
                    _enableScript = string.Compare(createTag[i], "true", true) == 0;
                    break;

                case "EnableCode":
                    _enableCode = string.Compare(createTag[i], "true", true) == 0;
                    break;

                case "EnableCache":
                    _enableCache = string.Compare(createTag[i], "true", true) == 0;
                    break;

                case "Root":
                    _root = createTag[i];
                    break;

                default:
                    _tagList.Add(createTag.Keys[i], createTag[i]);
                    break;
                }
            }
            _map        = string.Concat(map, "DataControl", index);
            _isNeedData = string.IsNullOrEmpty(_xsltPath);
        }