여러 버전을 설치하려고했지만 C# (asp.net) 코드가 액세스 데이터베이스 엔진을 인식하지 못하는 문제가있었습니다.Visual Studio를 64 비트 액세스에 연결하십시오.
Visual Studio가 32 비트 (64 비트 버전이 아닌 이유)이므로 32 비트 엔진에서만 작동합니다.
불행히도 32 비트 및 64 비트 오피스 제품은 공존 할 수 없으며 32 비트 엔진 (64 비트 사무실)을 설치할 수 없습니다.
전체 사무실 패키지를 제거하지 않고 Visual Studio를 엔진에 연결할 수있는 방법이 있습니까?
편집 : 연결 문자열을 heres 코드
public bool Connect(string connectionString)
{
if (this.connection != null)
{
if (!this.connection.State.Equals(ConnectionState.Closed))
{
this.connection.Close();
}
}
this.connection = new OleDbConnection(connectionString);
this.connection.Open();
return true;
}
Provider=Microsoft.ACE.OLEDB.12.0; Data Source='|DataDirectory|\db.accdb'; Persist Security Info=False;
PS : 나는 시도 - 캐치 그것을 둘러싸고해야 알아, 디버깅에 대한 예외를 볼 수 wan't ...
EDIT 2 : 이제는 사무실의 일부가 아니므로 ACE 공급자 대신 Jet 공급자를 사용하려고합니다 (이전 액세스 .mdb 형식 사용). VS supp orts는 현재 잘 작동하는 것 같습니다 ...
Visual Studio가 문제가 아니어야하며 컴파일 된 C# 응용 프로그램이어야합니다. 32 비트 또는 64 비트 아키텍처 용으로 응용 프로그램을 컴파일합니까? Visual Studio 자체가 32 비트라는 사실은 AFAIK를 변경해서는 안됩니다. 다른 타겟 아키텍처 용으로 컴파일 할 수 있습니다. – ADyson
P. VS가 32 비트 인 이유는 매우 합리적입니다.이 게시물을 참조하십시오. https://www.infoq.com/news/2016/01/VS-64-bit – ADyson
구체적으로 액세스하려고 시도하고있는 것은 무엇입니까? VS 내의 일부 데이터 도구는 무엇입니까? 아니면 C#으로 작성된 ASP.NET 응용 프로그램? IDE와 프레임 워크를 혼동하지 마십시오. – mason