什麼是bin文件?

        知道多問bin文件幾個爲什麼,是在出現以下這個問題時引發的。

        出現這樣的問題:未能加載文件或程序集“DAL”或它的某一個依賴項。系統找不到指定的文件。
        原因可能是:1.路徑不正確;2.文件不存在。


        相信大家都遇到這樣的問題了,我和大家一樣按照常規的方法:把DAL的路徑改到E:\4.平時記錄\UI\機房重構\UI\bin\Debug下面了,一般這樣就可以解決了。


        但是,我的沒有解決。bin\Debug下面仍讓沒有有關DAL的dll文件。不知道爲什麼了,明明已經把路徑改在那個下面了啊?如下圖:


        沒有辦法,就手動複製到bin下面了,初步解決了這個問題。

那麼,另一個問題又來了,爲什麼不管是Facade、BLL、Factory、IDAL、Entity都有,卻唯獨沒有DAL的dll文件呢?

        這個就和我們的七層有關係了,因爲七層中U層引用Facade層引用BLL引用Factory、IDAL,都引用Entity,但是,沒有那一層引用DAL,DAL層被獨立了,沒有在那一條線中,它是來實現IDAL接口層的。所以,U層的bin下面沒有DAL層的dll文件。但是,我們的程序啓動項是U層,我們的D層要想運行,需要把DAL的動態鏈接庫,放在U層下面。

參考博客:李社河:未能加載文件或程序集“DAL”或它的某一個依賴項。系統找不到指定的文件。


那麼,爲什麼這樣可以解決呢?

爲什麼要把dll文件放在U層的bin下面呢?

        程序把U層設爲了啓動項,而執行U層就是執行U層下面的bin文件。

那什麼是bin文件呢?爲什麼這麼關鍵?

         bin (binary)既是:二進制, 裏面存放的一般是可執行的二進制文件。二進制即是機器代碼,彙編語言編譯後的結果。我們編譯的是高級語言,把高級語言翻譯爲機器語言後,才能被計算機執行。
以下是機器語言:看到這個,對比一下,感覺咱們學習的高級語言簡單多了。^_^


這些二進制文件都在bin\Debug中,我們知道了什麼是bin,那麼Debug呢?
        世界最早的一批程序設計師之一,葛麗絲·霍波,有一天,她在調試設備時出現故障,拆開繼電器後,發現有隻飛蛾被夾扁在觸點中間,從而“卡”住了機器的運行。於是,霍波詼諧的把程序故障統稱爲“臭蟲(BUG)”,把排除程序故障叫DEBUG,而這奇怪的“稱呼”,竟成爲後來計算機領域的專業行話。如DOS系統中的調試程序,程序名稱就叫DEBUG。


        總結:機房重構不僅僅是完成一個可以運行的項目就可以了,更重要的是,進行中遇到問題,一定要耐心解決,這可以說更加有意義。自己遇到問題時,有逃避的心裏,想着問其他人可以很快得到答案,卻這樣輕易的剝奪了自己成長的機會。在自己耐心的摸索一些東西后,發現挺有意義的。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章