Match and Match_phrase on multiple fields for the same query string

I have to search for a keyword on multiple fields for the same query string.
"bool": {
"should": [
{
"match": {
"ABC": "Apple"
}
},
{
"match": {
"XYZ": "Apple"
}
}
]

When I wrote the query DSL , it has been translated as multimatch query(Not sure if the above code and DSL are same)
.Bool(b => b
.Should(sh => sh
.MultiMatch(c => c
.Fields(f => f.Field(p => p.ABC).Field("XYZ"))
.Query(keyz)))))

Similarly i want to write a DSL query but i want to do match_phrase operation. Can some one help me in solving this.

TIA