真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Revit二次開發(fā)的解決方式-創(chuàng)新互聯(lián)

根據(jù)當(dāng)前的程序,有以下幾個(gè)點(diǎn)進(jìn)行改良
1 日志每次revit生成的之后,就不會(huì)del,下次再次生成的時(shí)候,發(fā)現(xiàn)有日志,就不會(huì)在生成。采用將日志的名字修改為時(shí)間戳,每次運(yùn)行的時(shí)候,產(chǎn)生獨(dú)立的日志文件。

在工農(nóng)等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站制作、網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作定制開發(fā),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,成都全網(wǎng)營銷,成都外貿(mào)網(wǎng)站建設(shè),工農(nóng)網(wǎng)站建設(shè)費(fèi)用合理。

示例代碼

string date = DateTime.Now.ToLongDateString().ToString() + DateTime.Now.ToLongTimeString();
date = date.Replace(":", "_");
roller.File = @"EventLogByrevit" + date + ".txt";

這個(gè)代碼放在log.cs中。在revit的命令中執(zhí)行。這種方法調(diào)試的時(shí)候很有用。

2 在Model類中,增加一個(gè)每次都drop原來的庫,單獨(dú)重新生成一個(gè)庫。
在Model類中的構(gòu)造函數(shù)中增加

Database.SetInitializer(new DropCreateDatabaseAlways());

3 DB中增加一個(gè)時(shí)間字段,看是什么時(shí)間保存的數(shù)據(jù)。

4 DB中增加一個(gè)文件名的字段,這個(gè)文件名是全文件名,所以在類中設(shè)置這個(gè)屬性的時(shí)候,要保持1000個(gè)字符左右。不然個(gè)別的會(huì)很長,在保持的時(shí)候會(huì)報(bào)錯(cuò)。

5 在保持的時(shí)候,因?yàn)闃?gòu)建比較多,從網(wǎng)站上下載構(gòu)建
在Negut的控制臺(tái)上,執(zhí)行以下命令
Install-Package Z.EntityFramework.Extensions -Version 3.22.6
就會(huì)安裝一個(gè)Extension,它支持批量保持。

6 如果數(shù)據(jù)量還是很大,那么就將數(shù)據(jù)分為10000個(gè)為一個(gè)單位,分的方法可參考

 List templist = new List();
                       int separate = 10000;
            int mod整數(shù) = count / separate;
            int mod余數(shù) = count % separate;

            for (int j = 1; j <= mod整數(shù); j++)
            {
                templist.AddRange(l構(gòu)件實(shí)體列表.Skip((j-1) * separate).Take(separate));
                m.d構(gòu)件實(shí)體數(shù)據(jù)處理.AddRange(templist);
                m.BatchSaveChanges();
                templist.Clear();
            }
            if (mod余數(shù) != 0)
            {
                templist.AddRange(l構(gòu)件實(shí)體列表.Skip(mod整數(shù) * separate).Take(mod余數(shù)));
                m.d構(gòu)件實(shí)體數(shù)據(jù)處理.AddRange(templist);
                m.BatchSaveChanges();
                                    templist.Clear();
            }
            Common.utility.WriteDebugLog("數(shù)據(jù)庫存儲(chǔ)結(jié)束,采用了batchsavechange的方法。");

分為10000個(gè)為一個(gè)單位進(jìn)行保持。

7 為了便于發(fā)現(xiàn)問題,在系統(tǒng)中增加日志的記錄地方,采用
Common.utility.WriteDebugLog(string.Format("正在處理第{0}個(gè)文件,文件名是{1},一共有{2}個(gè)文件\r\n",i,filename, filenameList.Count()));
這種格式,比較好。

8 在Revit中執(zhí)行一個(gè)目錄下所有的revit文件。
打開一個(gè)revit文件,運(yùn)行這個(gè)插件。
這個(gè)插件一開始采用以下的代碼
string path = @"d:\1";
string[] filenameList = Directory.GetFiles(path, "*.rvt", SearchOption.AllDirectories);

 app = commandData.Application.Application;
        Document doc;
        foreach (var x in filenameList)
        {
            Common.utility.WriteDebugLog(string.Format("個(gè)文件,文件名是{0}\r\n",x));
        }
        int i = 1;
        foreach (var filename in filenameList)
        {
            Common.utility.WriteDebugLog(string.Format("正在處理第{0}個(gè)文件,文件名是{1},一共有{2}個(gè)文件\r\n",i,filename, filenameList.Count()));
            i++;

9 ui的地方抽象一個(gè)類出來,將每個(gè)文檔的處理邏輯放入到單獨(dú)的一個(gè)類中

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


當(dāng)前標(biāo)題:Revit二次開發(fā)的解決方式-創(chuàng)新互聯(lián)
文章地址:http://weahome.cn/article/dhdjih.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部