2009-05-05 10 views
0

Nouveau jour, nouveau problème :-)Insertion image sur 3MB via LINQ to SQL

code:
côté client:

void abw_Closed(object sender, EventArgs e) 
{ 
    DbServiceClient sc = new DbServiceClient(); 
    abw = (AddBlobWindow)sender; 
    fi = ((AddBlobWindow)sender).fi; 
    if ((bool)((AddBlobWindow)sender).DialogResult) 
    { 
     blob = new Blob(); 
     binBlob = new Binary(); 
     binaryBlob = new byte[fi.Length]; 

     int n = fi.OpenRead().Read(binaryBlob,0,Convert.ToInt32(fi.Length)); 

     binBlob.Bytes = binaryBlob; 
     blob.Content = binBlob; 
     blob.Signature = abw.tbSignature.Text; 
     blob.Size = (int)fi.Length; 

     sc.SaveBlobCompleted += new EventHandler<AsyncCompletedEventArgs>(sc_SaveBlobCompleted); 
     sc.SaveBlobAsync(blob); 
     } 
    } 

serveur code de service côté:

[OperationContract] 
public void SaveBlob(Blob blob) 
{ 
    try 
    { 
     RichTekstModelDataContext dc = new RichTekstModelDataContext(); 
     dc.Blobs.InsertOnSubmit(blob); 
     dc.SubmitChanges(); 
    } 
    catch (Exception ex) { string s = ex.Message; } 
} 

Le problème: Lorsque j'essaie d'enregistrer des blobs avec un champ de contenu inférieur à 3 Mo, cela fonctionne parfaitement, mais quand le blob dépasse 3 mb, je reçois l'exception "Non trouvé" (---> ligne d'erreur) dans le fichier Refernece.cs

public void EndSaveBlob(System.IAsyncResult result) { 
    object[] _args = new object[0]; 

----> base.EndInvoke ("SaveBlob", _args, résultat); }

Je n'ai aucune idée de comment le réparer. J'ai placé dans web.config les tailles appropriées de tampons, mais stil cela ne fonctionne pas.

Merci pour votre aide.

Répondre