For that many parameters, I'd probably use a class - and I'd probably create one which held option, optionImage, optionImageFileExtension, and clearOptionImage, and use
params
to pass a number of them through:
public int UpdateMC(Guid Id, string description, decimal score, int optionAnswer, params MyClass[] options)
And if some need all of the parameters, I'd probably create a class that held them all:
public class MyParameterClass
{
public string description {get; set;}
public decimal score {get; set;}
public int optionAnswer {get; set;}
public bool allowUploadAttachment {get; set;}
public byte[] image{get; set;}
public string imageFileExtension {get; set;}
public bool clearImage {get; set;}
public byte[] attachment {get; set;}
public string attachmentFileExtension {get; set;}
public bool clearAttachment {get; set;}
public List<MyClass> options {get; set;}
}