As stated it is not allowed to use Where
inside Include method. As I know it is not possible to filter navigation properties like that. What you could do is using projection
var billing = db.Billings
.Where(b => b.BillingID == id)
.Select(b => new {
Billing = b,
BillingClient = b.Client
FilteredAttachments = b.Attachments.Where(a => a.WorkflowStateID == workflowStateID)
})
.FirstOrDefault();