문제

CSLA와 함께 분산 환경에서 MVC .NET을 사용하고 있습니다. ~할 수 있다 내 웹 레이어 중 하나 (예 : 웹 사이트 .mvc)의 httppostedfilebase를 참조하십시오. 할 수 없습니다 별도의 레이어에서 httppostedfilebase를 참조하십시오 (OtherLayer.web라고 부르십시오).

httppostedfilebase를 호출하기 위해 무엇을 해야하는지에 대한 아이디어가 있습니까? 두 레이어에서 httppostedfile을 사용할 수 있습니다. 대신 사용해야합니까?

어셈블리 참조는 기본적으로 동일합니다 - 웹 사이트 .mvc i가 있습니다.

namespace Website.Mvc.Controllers
{
  using System;
  using System.Collections;
  using System.Collections.Generic;
  using System.Web.Mvc;
  using System.Web;
  using System.IO;
  using PetOrganizer.Mvc.Helpers;
  using TrupanionPetInsurance.Web;

다른 층에서는 다음과 같습니다.

namespace OtherLayer.Web
{
  using System;
  using System.Collections;
  using System.Collections.Generic;
  using System.Collections.Specialized;
  using System.Data;
  using System.Data.SqlClient;
  using System.IO;
  using System.Net.Mail;
  using System.Text;
  using System.Text.RegularExpressions; 
  using System.Web;
  using System.Web.Mvc;
  using System.Web.Security;
  using System.Xml;
  using System.Xml.Serialization;
  using Csla;
  using iTextSharp.text;
  using iTextSharp.text.pdf;
  using TruDat.BusinessLayer;
  using TruDat.BusinessLayer.Billing;
  using TruDat.BusinessLayer.Data;
  using TruDat.BusinessLayer.Utility;
  using TrupanionPetInsurance.Web.EmailTemplateParser;
  using TruDat.BusinessLayer.DataServices;
도움이 되었습니까?

해결책

프로젝트를 참조하십시오 System.Web.Abstractions 포함 된 어셈블리 HttpPostedFileBase 유형.

그것이 보일 수있는만큼 혼란 스럽습니다 HttpPostedFile 유형은 별도의 어셈블리에 살고 있습니다 (System.Web)하지만 정확히 정확한 네임 스페이스.

네임 스페이스는 어셈블리에 걸쳐있을 수 있으며 어셈블리의 이름이 반드시 포함 된 유형의 네임 스페이스를 지시하는 것은 아닙니다. 아니요 System.Web.Abstractions 네임 스페이스 단순히 유형의 유형을 포함하는 두 개의 어셈블리 System.Web 네임 스페이스.

두 어셈블리를 참조하면이 단일 명령문을 사용하여 자격을 갖춘 이름으로 두 유형을 모두 참조 할 수 있습니다.

using System.Web;

다른 팁

프로젝트에서 HTTPPOSTEDFILEBASE 유형이 포함 된 System.Web.AbStractions 어셈블리를 참조하십시오.

감사합니다. Andrew Hare, 그것은 트릭을했지만 .NET 4.0 등에서 System.Web.AbStractions가 더 이상 사용되지 않았으며 대신 System.Web에 대한 참조를 추가해야한다고 생각합니다.

제 경우에는 그것이 궁극적 인 해결책이었습니다.

using System.Web;

따라서 HTTPPOSTEDFILEBASE가 인식되었습니다.

감사.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top