2013-06-03 4 views
1

동일한 코드가 1 개의 proj에서 작동하고 다른 하나에서는 작동하지 않습니다. 이것을 쓰는 다른 방법. 오류 CS1729 오류가 발생했습니다 : '평가'에 12 개의 인수를 사용하는 생성자가 없습니다. diff 패키지에 복사 할 때도 컴파일되고 잘 작동합니다. 임시 asp.net 파일을 정리하려고했지만 도움이되지 않습니다.오류 cs1729에 생성자가 없습니다.

public class Assessment 
{ 
    public Assessment(Guid assessmentId,string applicationId,string assessmentType, Guid requestedBy,DateTime requestedDate,Guid assessmentOwner,string applicationToTest, 
bool isCompleted,DateTime dateScheduled,DateTime datePerformed, GuidperformedBy,  string uri) 
    { 
     this.AssessmentId = assessmentId;  this.ApplicationId = applicationId; 
     this.AssessmentType = assessmentType; this.RequestedBy = requestedBy; 
     this.RequestedDate = requestedDate; this.AssessmentOwner = assessmentOwner; 
     this.ApplicationToTest = applicationToTest; this.IsCompleted = isCompleted; 
     this.DateScheduled = dateScheduled; this.DatePerformed = datePerformed; 
     this.PerformedBy = performedBy;  this.uri = uri; 

    } 

    public Assessment() 
    { 
     this.AssessmentId = Guid.NewGuid(); this.ApplicationId = string.Empty; 
     this.AssessmentType = string.Empty; this.RequestedBy = Guid.NewGuid(); 
     this.RequestedDate = DateTime.Now;  this.AssessmentOwner = Guid.NewGuid(); 
     this.ApplicationToTest = string.Empty; this.IsCompleted = false; 
     this.DateScheduled = Convert.ToDateTime(DateScheduled); 
     this.DatePerformed = Convert.ToDateTime(DatePerformed); 
     this.PerformedBy = Guid.NewGuid(); this.uri = string.Empty; 

    } 
public Guid AssessmentId { get;  set; }     
public string ApplicationId {get; set; }    
public string AssessmentType {get; set; }     
public Guid RequestedBy { get; set; }     
public DateTime RequestedDate {get; set; } 
public Guid AssessmentOwner {get; set; } 
public string ApplicationToTest {get; set; }     
public bool IsCompleted { get; set; } 
public DateTime DateScheduled {get; set; }    
public DateTime DatePerformed { get; set; } 
public Guid PerformedBy { get; set; } 
public string uri { get; set; } 
} 


aspx.cs 
    protected void bnSubmit_Click(object sender, EventArgs e) 
    { 
     Assessment asst = new Assessment(Guid.Parse(AssessmentId.Text), 
      txtApplicationID.Text, 
      DropDownList1.SelectedValue, 
      requestedBy, 
      DateTime.Now, 
      Guid.Parse(txtAssessmentOwnerEmail.Text), 
      ddlApplicationToTest.SelectedValue, 
      false, 
      CalendarExtender1.SelectedDate.GetValueOrDefault(), 
      CalendarExtender2.SelectedDate.GetValueOrDefault(), 
      Guid.Parse(txtPerfomedBy.Text), 
      txtUri.Text); 
    db.AddAssessment(asst); 
    } 
+0

누락 된'}'을 추가하고 무슨 일이 일어나는 지 봅니다. – Hogan

+0

죄송합니다.}가 없습니다. 그 세트가 끝나면 닫힙니다. 나는 그것이 길어질 것 인 것에 따라 게시를 daint한다 – user2340141

+0

코드는 멋지다. 그래서 당신의 대원을 다시 시작해라. – aef

답변

0

게시 된 코드는 Assessment 클래스의 시작을 보여줍니다. 해당 클래스에는 폐업 번호 }이 없습니다.

그런 다음 새로운 Assessment 클래스를 만드는 함수 호출이 있습니다 (일반적으로 페이지 클래스의 일부 임).

제 생각에이 부분은 당신이 문제를 설명하기 위해 합류 한 두 파일입니다. 즉, 페이지 클래스에서 using을 사용하지 않았거나 이름에 오타가 있거나 프로젝트의 다른 파일을 참조하고 있음을 의미합니다.

Assessment 클래스가 컴파일되지 않고 링크 된 이전에 컴파일 된 버전이있을 수도 있습니다.

이 줄의 일부. 어떤 경우 이건 정확한 코드가 아니므로 문제가 무엇인지 파악하는 것은 불가능합니다. 어딘가에 전체 코드를 올리면 (bitbucket?) 문제가 무엇인지 알 수 있습니다. 로 보는

+0

닫기}가 있습니다. 수정 된 코드입니다. 확인하십시오. Assessment 클래스가 이전에 컴파일 된 버전을 사용하고 있는지 의심 스럽습니다. 하지만 여러 번 재건하려고했습니다. 나는 깨끗한 옵션을 찾지 못한다. – user2340141

+0

@ user2340141 ... 이제 오류 메시지와 일치하는 13 개의 매개 변수가 있습니다. – Hogan

+0

죄송합니다. 12 점을보실 수 있습니까? – user2340141

1

것들 :

  1. 다른 네임 스페이스에 Assessment라는 이름의 다른 클래스 정의가 있습니까?
  2. 프로젝트 참조를 확인하십시오. 올바른 Assessment 정의가 포함 된 어셈블리를 참조하고 있는지 확인하십시오. 무의식적으로 해당 어셈블리의 이전 버전을 참조 할 수 있습니다.
  3. Assessment을 포함하는 어셈블리를 검사하려면 ILSpy와 같은 디스어셈블러를 사용하십시오. 클래스 정의가 올바른지 확인하십시오.
+0

이것은 유용했습니다. 감사!! – ElSS

관련 문제