webForumDet fria alternativet

Fel i dll-fil

.NET

11 svar · 346 visningar · startad av kristoffer

Medlem sedan juni 20001 257 inlägg
Frågan#1

Jag har lagt till en annan persons dll-fil som heter Multilingual.dll till bin och sedan Buildat solution varefter jag försöker köra en fil och får ett felmeddelande System.Data.SqlClient.SqlException: SQL Server does not exist or access denied. Men, när jag tittar på Stack Trace syns något märkligt på rad 7, 8 och 9:

[SqlException: SQL Server does not exist or access denied.]
System.Data.SqlClient.SqlConnection.Open() +761
System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection, ConnectionState& originalState) +44
System.Data.Common.DbDataAdapter.Fill(Object data, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) +98
System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) +77
System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) +38
Multilingual.Database.GetDataSet(String Sql) in \\love\techie\web sites\inetpub\localization\database.cs:21
Multilingual.Article.GetTitles(Int32 count, String languageID) in \\love\Techie\Web Sites\InetPub\Localization\Article.cs:58
Multilingual.Controls.ArticleListControl.CreateChildControls() in \\love\Techie\Web Sites\InetPub\Localization\Controls\ArticleListControl.cs:27
System.Web.UI.Control.EnsureChildControls() +100
System.Web.UI.Control.PreRenderRecursiveInternal() +38
System.Web.UI.Control.PreRenderRecursiveInternal() +125
System.Web.UI.Control.PreRenderRecursiveInternal() +125
System.Web.UI.Control.PreRenderRecursiveInternal() +125
System.Web.UI.Page.ProcessRequestMain() +1470

Är love namnet på personens dator? Skall jag själv rebuilda dll-filen och därefter lägga till den i projektet? I så fall, hur?

Medlem sedan jan. 20021 122 inlägg
#2

tja det skulle jag tro, den har iaf rätt format för att vara en nätverksadress. Pröva att ersätta med ditt datornamn eller \\localhost\katalog

Medlem sedan juni 20001 257 inlägg
#3

Men ersätta var? Raden finns inte i någon fil. Det verkar som den struntar i mina filer helt när jag kör projektet.

Medlem sedan jan. 20021 122 inlägg
#4

ersätrt \\love\Techie\web med \\localhost\"mappen där du har filerna"

Medlem sedan juni 20001 257 inlägg
#5

Så här är det:

  • Jag öppnar hans zip-fil och kopierar in filerna i mitt projekt.
  • Jag öppnar mitt projekt i Visual Studio.
  • Jag öppnar hans projekt i en annan instans av Visual Studio.
  • Jag Buildar hans projekt och kopierar in dll-filen till mitt projekt.
  • Jag Buildar sedan mitt eget projekt och Build and Browsar en fil.

Då upptäcker jag att den ignorerar de uppzippade filerna i mitt projekt och bara tittar i den inkopierade dll-filen. Detta upptäcker jag eftersom ändringar jag gör i mina egna filer inte påverkar resultatet något. Om jag däremot ändrar i filerna i hans projekt och därefter återigen kopierar in dll-filen till mitt projekt syns förändringarna.

Problemet är alltså att jag måste ange att den skall använda de inkopierade filerna när jag Buildar mitt projekt. Är det inte namespacet som skall ange vilken dll-fil som filerna har att göra med?

Medlem sedan apr. 20012 266 inlägg
#6

har du registrerat hans .dll i ditt projekt? du säger nu att du bara kopierar inte, kanske måste reggas också.

Medlem sedan juni 20001 257 inlägg
#7

Registreras? Hur gör man det? Om det innebär att man lägger till en Reference till dll-filen så har jag gjort det.

Medlem sedan apr. 20012 266 inlägg
#8

alltså lägga in den som reference, högerklickar på references och väljer add reference, sedan letar du upp din .dll fil som du laddat ner... kanske kan fungera

Medlem sedan juni 20001 257 inlägg
#9

Det har jag gjort. Ingen skillnad.

Medlem sedan juni 20001 257 inlägg
#10

I de .cs-filerna som hör till hans dll-fil skall det stå

namespace namnet_på_hans_dll_fil

väl?

Inga andra ändringar behövs göras? Skall jag ändra något i Global.asax.cs?

Medlem sedan apr. 20012 266 inlägg
#11

när du använder namespace "koden" definerar du i vilket namespace du t.ex ska skapa olika object.

så om du ska använda en av hans funktioner så tar du och skapar en instans av den class funktionen finns i. om du vill använda en funktion direkt kör du på Huvudnamespace.Class.Funktionern(bah)

hoppas jag förstod din fråga rätt :)

Medlem sedan apr. 20012 266 inlägg
#12

men du hade reggat den och kompilerat men får fortfarande inget att funka?

283 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
153 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
152 ms — ändringar (db)