public void AddMember(UserTypeMember member) { if (member == null) { throw new ArgumentNullException("member"); } if (member.MemberType.IsLargeObject) { throw new ArgumentException(String.Format("Cannot add member '{0}' of type '{1}' to type '{2}'.", member.MemberName, member.MemberType, TypeName)); } if (members == null) { members = new List <UserTypeMember>(); } if (members.ToDictionary(x => x.MemberName, y => y, StringComparer.OrdinalIgnoreCase) .ContainsKey(member.MemberName)) { throw new ArgumentException(String.Format("A member named '{0}' is already present in type '{1}'.", member.MemberName, member.MemberType)); } members.Add(member); memberNamesCache.Clear(); }
public CreateTypeStatement(ObjectName typeName, UserTypeMember[] members, bool replaceIfExists) { if (typeName == null) throw new ArgumentNullException("typeName"); if (members == null) throw new ArgumentNullException("members"); if (members.Length == 0) throw new ArgumentException("At least one member must be specified."); TypeName = typeName; Members = members; ReplaceIfExists = replaceIfExists; }
public UserTypeMember AddMember(string memberName, SqlType memberType) { if (String.IsNullOrEmpty(memberName)) { throw new ArgumentNullException("memberName"); } if (memberType == null) { throw new ArgumentNullException("memberType"); } try { var member = new UserTypeMember(memberName, memberType); AddMember(member); return(member); } finally { memberNamesCache.Clear(); } }
public CreateTypeStatement(ObjectName typeName, UserTypeMember[] members) : this(typeName, members, false) { }
public void CreateSimpleType() { var typeName = ObjectName.Parse("APP.type1"); var members = new UserTypeMember[] { new UserTypeMember("id", PrimitiveTypes.Integer()), new UserTypeMember("name", PrimitiveTypes.VarChar()) }; var statement = new CreateTypeStatement(typeName, members); SerializeAndAssert(statement, (serialized, deserialized) => { Assert.IsNotNull(deserialized); Assert.IsNotNull(deserialized.TypeName); Assert.AreEqual(typeName, deserialized.TypeName); Assert.IsNotNull(deserialized.Members); Assert.IsNotEmpty(deserialized.Members); Assert.AreEqual(2, deserialized.Members.Length); }); }
public void AddMember(UserTypeMember member) { if (member == null) throw new ArgumentNullException("member"); if (member.MemberType.IsLargeObject) throw new ArgumentException(String.Format("Cannot add member '{0}' of type '{1}' to type '{2}'.", member.MemberName, member.MemberType, TypeName)); if (members == null) members = new List<UserTypeMember>(); if (members.ToDictionary(x => x.MemberName, y => y, StringComparer.OrdinalIgnoreCase) .ContainsKey(member.MemberName)) throw new ArgumentException(String.Format("A member named '{0}' is already present in type '{1}'.", member.MemberName, member.MemberType)); members.Add(member); memberNamesCache.Clear(); }
public UserTypeMember AddMember(string memberName, SqlType memberType) { if (String.IsNullOrEmpty(memberName)) throw new ArgumentNullException("memberName"); if (memberType == null) throw new ArgumentNullException("memberType"); try { var member = new UserTypeMember(memberName, memberType); AddMember(member); return member; } finally { memberNamesCache.Clear(); } }