Recently I purified one recombinant protein by urea based method (Ni-NTA was used for binding). Initially before dialysis I had a good concentration of protein, but after dialysis I lost my protein
Your strategy is common, but can lose protein for many reasons. Obviously you must choose a membrane exhibiting a MW cutoff well below your target protein size. Other than that, the three most common sources of sample loss in dialysis are proteolysis, precipitation, and adsorption.
To minimize proteolysis use an appropriate inhibitor cocktail in your sample buffer and dialyze at 4C. Many commercial cocktails are available, or you can look up DIY recipes.
Precipitation can be trickier. Be sure your target protein is soluble in the dialyzate. You may need to adjust pH to dissolve a globular protein. And if your protein is fibrous or membrane-associated, you may need to include a detergent or chaotrope.
Some proteins are naturally sticky on membranes. Manufacturers offer membranes of many materials, mostly various cellulose and polysulfone derivatives. You may need to try out different products to find one that minimizes loss of your specific protein. Many vendors will provide free samples upon request.
Also, you may be able to just load a high concentration of target protein, so you still have enough after your loss to adsorption.
Although I've never done this, I've read that you can pretreat the membrane by dialyzing a solution of BSA to block the sticky sites on the matrix. Then rinse and load your sample. Of course this contaminates your product with BSA, but it may not be a problem, depending on your downstream plans.
Finally, note urea can modify proteins, especially via rapid carbamoylation (aka carbamylation) of the N-terminus at neutral pH and above. Consider using guanidine, instead. Or look at this paper for tips on minimizing the urea reaction: Article Inhibition of Protein Carbamylation in Urea Solution Using A...
Many odd things can happen when you attempt to refold protein, which is precisely what you are attempting to do when you dialyze away a chaotrope like urea. In grad school I had a sHsp prep which required dialysis from urea into GuHCl to remain soluble after I ran a huge 8M urea SEC column (very slowly), dialyzing the urea away alone gave complete precipitation. At the risk of sounding repetitive, I always recommend solubility screening by DOE. I've had great luck with looking through an array of additives by dilution and then spin column MWCO membranes. After a couple rounds I got conditions that yielded 100% soluble refolding, good luck!
Besides the issue with dialysis to remove the urea, did you have the correct selective dialysis tubing in terms of molecular weight for your protein. What buffer/solution did you dialyze against? Was it possible that you were very close to the pI of the protein and thus causing the confirmation change/precipitation? Did you attempt to resolubilize the precipitate to see if that was the protein component you had lost?