2016-05-15 7 views
0

"Allitems" enthält alle Elemente für eine Kategorie, die in einer Combobox ausgewählt ist. Dieser Teil des Codes funktioniert ordnungsgemäß.Rendern von Bildern in die Rasiereransicht Cshtml. Winkelprobleme

Ich habe Bilder in einer Datenbank als Binärdaten für jedes Element gespeichert. Wenn ein Gegenstand angezeigt wird, muss das Bild des Gegenstandes gerendert werden. Dazu muss ich die ID des Elements vor dem Rendern im ASP.Net-Controller speichern, da "RenderImage" die ID des Elements benötigt. Dies geschieht durch Aufruf von "saveItemId" im AngularJS-Controller.

Aber das Rendern der Bilder ist sehr unberechenbar. "saveItemId" wird wiederholt aufgerufen, nicht jedoch RenderImage.

Es gibt kein Problem beim Aufrufen von Methoden/Speichern der ID im AngularJS-Controller oder im ASP .Net MVC-Controller.

<div dir-paginate="r in allitems | filter:q | itemsPerPage: pageSize" current-page="currentPage" ng-init ='saveItemId(r.ID)' class="ag-fresh"> 
<div style="float:left"> 
    <div class="col-xs-3"> 
     <div style="width:200px;"> 
      <div class="product-image-wrapper"> 
       <div class="single-products"> 
        <div class="productinfo text-center"> 
         <img src="@Url.Action("RenderImage")" height="84" width="84"/> 
         <br/> 
          <h>{{r.Price}}</h> 
          <p>{{r.Name}}</p> 
          <button class="btn btn-default add-to-cart" ng-click="AddToCart(r.ID)">Add to cart</button> 
          {{successTextAlert}} 
        </div> 
       </div> 
      </div> 
     </div> 
    </div> 
</div> 

Antwort

0
  1. sein scheint, dass eine RenderImage js Variable im Steuerungsbereich ist. Wenn es so ist, seine Notwendigkeit mit Klammern sein nennen, wie {{RenderImage}}

  2. Versuchen Sie es mit 'ng-src' statt 'src' Attribut, für das Element img wie bei https://docs.angularjs.org/api/ng/directive/ngSrc#!

+0

Vielen Dank für Ihre Antwort. RenderImage ist eine Funktion in ASP.Net-Controller. Der Grund, warum ich es benutze, ist folgendes: Ich habe bereits mit diesen ohne Erfolg versucht. Das "internalImage" ist ein Array von Bytes:

0

Dies funktioniert: <img ng-src="data:image/jpeg;base64,{{arrayBufferToBase64(r.InternalImage)}}" height="84" width="84"/> I ArrayBufferToBase64 zum Winkelregler hinzugefügt.

Verwandte Themen