// // Copyright (c) Microsoft. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. // using Newtonsoft.Json; namespace Microsoft.SqlTools.ServiceLayer.TableDesigner.Contracts { /// /// The view model for a table object /// public class TableViewModel : ObjectViewModelBase { public DropdownProperties Schema { get; set; } = new DropdownProperties(); public InputBoxProperties Description { get; set; } = new InputBoxProperties(); public TableColumnCollection Columns { get; set; } = new TableColumnCollection(); public InputBoxProperties Script { get; set; } = new InputBoxProperties(); } public class TableColumnCollection : TableComponentProperties { [JsonIgnore] protected override string NewObjectNamePrefix { get { return "column"; } } protected override TableColumnViewModel CreateNew(string name) { //TODO: Add the default values var column = new TableColumnViewModel(); column.Name.Value = this.GetDefaultNewObjectName(); return column; } } }