You can convert the file to a base64 encoded byte array and send that up as a property in the JSON object you're sending. No need for special headers, "application/json" and post will work just fine.
Stack overflow question concerning using javascript to convert a file to a base64 encoded byte array.
C# should just be File.WriteAllBytes(), or store the byte array in a database or other data store.