Skip to content

Instantly share code, notes, and snippets.

@joshbooker
Created June 16, 2017 12:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save joshbooker/1bab3706b98b7ee488822b4a0c65e5a1 to your computer and use it in GitHub Desktop.
Save joshbooker/1bab3706b98b7ee488822b4a0c65e5a1 to your computer and use it in GitHub Desktop.
public void DeleteSetBaseStatement()
{
var deleteSetStatement = new DeleteSetStatement();
deleteSetStatement.From = new FromClause()
{
Alias = "A",
EntitySet = TestHelper.GetEntitySetRef<Student>()
};
ExpressionContainer expressionRecIdFilter =
RelationalQueryBuilderHelper.EqualComparisonOperator(
RelationalQueryBuilderHelper.CreateField("A", DataServiceConstants.RecIdFieldName),
RelationalQueryBuilderHelper.CreateInt64Literal(1)
);
ExpressionContainer expressionEtagFilter =
RelationalQueryBuilderHelper.EqualComparisonOperator(
RelationalQueryBuilderHelper.CreateField("A", DataServiceConstants.RecVersionFieldName),
RelationalQueryBuilderHelper.CreateInt64Literal(2)
);
ExpressionContainer andFilterExpression =
RelationalQueryBuilderHelper.AndOperator(
expressionRecIdFilter, expressionEtagFilter
);
deleteSetStatement.AddWhereExpression(andFilterExpression);
var sqlResult = deleteSetStatement.ToSql();
sqlResult.Should().Be("DELETE T1 FROM [dbo].[RTSStudent] T1 WHERE ((T1.[RECID] = @P1) AND (T1.[RECVERSION] = @P2));");
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment